diff --git a/java_indexer/src/io/coati/JavaAstVisitor.java b/java_indexer/src/io/coati/JavaAstVisitor.java index e90f658d..ec3eeff0 100644 --- a/java_indexer/src/io/coati/JavaAstVisitor.java +++ b/java_indexer/src/io/coati/JavaAstVisitor.java @@ -73,17 +73,28 @@ public class JavaAstVisitor extends JavaAstVisitorAdapter @Override public void visit(final PackageDeclaration n, final Void v) { Name name = n.getName(); - - String packageName = JavaparserDeclNameResolver.getQualifiedName(name).toSerializedNameHierarchy(); - Optional as = name.getBegin(); + JavaIndexer.recordSymbolWithLocationAndScope( - m_callbackId, packageName, SymbolType.PACKAGE, + m_callbackId, + JavaparserDeclNameResolver.getQualifiedName(name).toSerializedNameHierarchy(), + SymbolType.PACKAGE, name.getRange(), n.getRange(), AccessKind.NONE, false ); + while (name.getQualifier().isPresent()) + { + name = name.getQualifier().get(); + JavaIndexer.recordSymbol( + m_callbackId, + JavaparserDeclNameResolver.getQualifiedName(name).toSerializedNameHierarchy(), + SymbolType.PACKAGE, AccessKind.NONE, + false + ); + } + super.visit(n, v); }