1313import com .sourcegraph .semanticdb_javac .Semanticdb .SymbolInformation .Property ;
1414import com .sourcegraph .semanticdb_javac .Semanticdb .SymbolOccurrence .Role ;
1515
16- import javax .lang .model .type .PrimitiveType ;
17- import javax .lang .model .type .TypeKind ;
1816import javax .lang .model .util .Elements ;
1917import java .io .IOException ;
2018import java .nio .file .Path ;
@@ -91,7 +89,7 @@ private void emitSymbolInformation(Symbol sym, JCTree tree) {
9189 if (documentation != null ) builder .setDocumentation (documentation );
9290 Semanticdb .Signature signature = semanticdbSignature (sym );
9391 if (signature != null ) builder .setSignature (signature );
94- List <Semanticdb .Annotation > annotations = semanticdbAnnotations (tree );
92+ List <Semanticdb .AnnotationTree > annotations = semanticdbAnnotations (tree );
9593 if (annotations != null ) builder .addAllAnnotations (annotations );
9694
9795 builder
@@ -311,12 +309,12 @@ private String semanticdbMd5() {
311309 }
312310 }
313311
314- private List <Semanticdb .Annotation > semanticdbAnnotations (JCTree node ) {
312+ private List <Semanticdb .AnnotationTree > semanticdbAnnotations (JCTree node ) {
315313 if (!(node instanceof JCTree .JCClassDecl )
316314 && !(node instanceof JCTree .JCVariableDecl )
317315 && !(node instanceof JCTree .JCMethodDecl )) return null ;
318316
319- List <Semanticdb .Annotation > annotations = new ArrayList <>();
317+ List <Semanticdb .AnnotationTree > annotations = new ArrayList <>();
320318
321319 JCTree .JCModifiers mods ;
322320 if (node instanceof JCTree .JCClassDecl ) {
@@ -334,26 +332,31 @@ private List<Semanticdb.Annotation> semanticdbAnnotations(JCTree node) {
334332 return annotations ;
335333 }
336334
337- private Semanticdb .Annotation .Builder semanticdbAnnotation (JCTree .JCAnnotation annotation ) {
338- Semanticdb .Annotation .Builder builder = Semanticdb .Annotation .newBuilder ();
339- builder .setTpe (new SemanticdbTypeVisitor (globals , locals ).visit (annotation .type ));
335+ private Semanticdb .AnnotationTree .Builder semanticdbAnnotation (JCTree .JCAnnotation annotation ) {
336+ Semanticdb .AnnotationTree .Builder annotationBuilder = Semanticdb .AnnotationTree .newBuilder ();
337+ annotationBuilder .setTpe (new SemanticdbTypeVisitor (globals , locals ).visit (annotation .type ));
340338
341339 for (JCTree .JCExpression param : annotation .args ) {
342- Semanticdb .Annotation .ParameterPair .Builder parameterBuilder =
343- Semanticdb .Annotation .ParameterPair .newBuilder ();
340+ Semanticdb .AssignTree .Builder parameterBuilder = Semanticdb .AssignTree .newBuilder ();
344341
345342 // anecdotally always JCAssign
346343 JCTree .JCAssign assign = (JCTree .JCAssign ) param ;
347344 JCTree .JCExpression assignValue = assign .rhs ;
348345
349- parameterBuilder .setKey (globals .semanticdbSymbol (((JCTree .JCIdent ) assign .lhs ).sym , locals ));
346+ parameterBuilder .setLhs (
347+ Semanticdb .Tree .newBuilder ()
348+ .setIdTree (
349+ Semanticdb .IdTree .newBuilder ()
350+ .setSymbol (
351+ globals .semanticdbSymbol (((JCTree .JCIdent ) assign .lhs ).sym , locals ))
352+ .build ()));
350353
351- parameterBuilder .setValue (semanticdbAnnotationParameter (assignValue ));
354+ parameterBuilder .setRhs (semanticdbAnnotationParameter (assignValue ));
352355
353- builder .addParameters (parameterBuilder );
356+ annotationBuilder .addParameters (Semanticdb . Tree . newBuilder (). setAssignTree ( parameterBuilder ) );
354357 }
355358
356- return builder ;
359+ return annotationBuilder ;
357360 }
358361
359362 private Semanticdb .Tree .Builder semanticdbAnnotationParameter (JCTree .JCExpression expr ) {
@@ -457,9 +460,7 @@ private Semanticdb.Tree.Builder semanticdbAnnotationParameter(JCTree.JCExpressio
457460 return Semanticdb .Tree .newBuilder ().setLiteralTree (literalBuilder );
458461 } else if (expr instanceof JCTree .JCAnnotation ) {
459462 return Semanticdb .Tree .newBuilder ()
460- .setAnnotationTree (
461- Semanticdb .AnnotationTree .newBuilder ()
462- .setAnnotation (semanticdbAnnotation ((JCTree .JCAnnotation ) expr )));
463+ .setAnnotationTree (semanticdbAnnotation ((JCTree .JCAnnotation ) expr ));
463464 } else if (expr instanceof JCTree .JCIdent ) {
464465 return Semanticdb .Tree .newBuilder ()
465466 .setIdTree (
0 commit comments