private static void analyzePackageName( CompilationUnitTree cut, Source src, EndPosTable endPosTable) { ExpressionTree packageExpr = cut.getPackageName(); if (isNull(packageExpr)) { src.setPackageName(""); } else { src.setPackageName(packageExpr.toString()); } if (packageExpr instanceof JCTree.JCIdent) { JCTree.JCIdent ident = (JCTree.JCIdent) packageExpr; int startPos = ident.getPreferredPosition(); int endPos = ident.getEndPosition(endPosTable); Range range = Range.create(src, startPos + 1, endPos); long pkgLine = range.begin.line; src.setPackageStartLine(pkgLine); addPackageIndex(src, pkgLine, 8, src.getPackageName()); } }
Symbol owner = sym.owner; int nameBegin = ident.getStartPosition(); int nameEnd = ident.getEndPosition(endPosTable); Range nameRange = Range.create(src, nameBegin, nameEnd); Range range = Range.create(src, nameBegin, endPos);
private static void addVariable( SourceContext context, Source src, JCTree.JCExpression selected, String selectScope, String fqcn) { if (selected instanceof JCTree.JCIdent) { JCTree.JCIdent ident = (JCTree.JCIdent) selected; int vStart = ident.getStartPosition(); int vEnd = ident.getEndPosition(context.endPosTable); Range vRange = Range.create(src, vStart, vEnd); Variable variable = new Variable(selectScope, ident.pos, vRange); variable.fqcn = fqcn; src.getCurrentScope() .ifPresent( scope -> { scope.addVariable(variable); addSymbolIndex(src, scope, variable); }); } }