public override IDeclaredElementPointer <T> CreateElementPointer <T>(T declaredElement) { var element = declaredElement as IUriIdentifierDeclaredElement; if (element == null) { return(null); } var node = element as ITreeNode; var file = node != null ? node.GetContainingFile() : null; IDeclaredElement fakeDeclaredElement = new UriIdentifierDeclaredElement( file, element.GetNamespace(), element.GetLocalName(), element.GetInfo(), element.GetPsiServices(), true, element); var sourceElementPointer = new SourceElementPointer <T>((T)fakeDeclaredElement); return(sourceElementPointer); }
public IList <IDeclaration> GetDeclarationsIn(IPsiSourceFile sourceFile) { if (this.filesScope.Contains(sourceFile) && this.GetSourceFile() != sourceFile) { return(EmptyList <IDeclaration> .InstanceList); } return(UriIdentifierDeclaredElement.GetDeclarationsIn(sourceFile, this)); }
public IList <IDeclaration> GetDeclarations() { if (this.ScopeToMainFile) { return(UriIdentifierDeclaredElement.GetDeclarationsIn(this.GetSourceFile(), this)); } return(UriIdentifierDeclaredElement.GetDeclarations(this)); }
private IEnumerable <NTriplesFileMemberData> GetPrimaryMembers(ISolution solution) { var cache = solution.GetComponent <NTriplesCache>(); //var subjects = cache.GetImportantSubjects().ToArray(); var symbolsByFile = cache.GetAllUriIdentifierSymbolsByFile(); var services = solution.GetPsiServices(); foreach (var symbols in symbolsByFile) { var file = symbols.Key; var sourceFile = file.GetPsiFile(NTriplesLanguage.Instance, new DocumentRange(file.Document, 0)); foreach (var symbol in symbols.Value) { var uriIdentifier = new UriIdentifierDeclaredElement( sourceFile, symbol.Namespace, symbol.LocalName, symbol.Info, services, true); yield return(new NTriplesFileMemberData(uriIdentifier, ContainerDisplayStyle.NoContainer)); } } }
private void BuildDeclarations() { this.myDeclarations.Clear(); IDeclaredElement element = this.myOriginalElementPointer.FindDeclaredElement(); if (element == null) { return; } var declarations = new MultyPsiDeclarations(element).AllDeclarations.ToList(); if (element is IUriIdentifierDeclaredElement) { declarations.AddRange(UriIdentifierDeclaredElement.GetDeclarations(element as IUriIdentifierDeclaredElement)); } foreach (var declaration in declarations) { this.myDeclarations.Add(declaration); } }
public IList <IDeclaration> GetDeclarationsIn(IPsiSourceFile sourceFile) { return(UriIdentifierDeclaredElement.GetDeclarationsIn(sourceFile, this)); }
public IList <IDeclaration> GetDeclarations() { return(UriIdentifierDeclaredElement.GetDeclarations(this)); }