public ImportedNameSpace(string mainname, string shortname) { this.mainname = mainname; this.shortname = shortname; //if (string.IsNullOrEmpty(shortname)) //{ // return; //} preCompletion = new ImportFileItem(CompletionWordType.nameSpace, shortname); }
public override void GetCompletionList(IList <ICompletionData> data, bool IsNameSpaceOpen = false) { string scope = maincontainer.currentScope; //TODO:분석된 토큰으로 자동완성을 만든다. if (IsNameSpaceOpen) { //네임스페이스를 찾아보고 없으면 기존 사용 if (false) { return; } TOKEN ctkn = GetToken(0); if (ctkn == null) { return; } List <TOKEN> t = tokenAnalyzer.GetTokenListFromTarget(ctkn, true); //imported1.var1; //imported1.const1.object1; //const1.object1; //maincontainer.vars[0]. foreach (var item in t) { PreCompletionData preCompletionData = new ImportFileItem(CompletionWordType.nameSpace, item.Value); data.Add(new CodeCompletionData(preCompletionData)); } return; } foreach (var item in maincontainer.importedNameSpace) { if (string.IsNullOrEmpty(item.shortname)) { continue; } data.Add(new CodeCompletionData(item.preCompletion)); } foreach (var item in maincontainer.funcs.FindAll(x => scope.Contains(x.scope))) { data.Add(new CodeCompletionData(item.preCompletion)); } foreach (var item in maincontainer.vars.FindAll(x => scope.Contains(x.scope))) { data.Add(new CodeCompletionData(item.preCompletion)); } base.GetCompletionList(data); }