Files
codeql/java/ql/test/library-tests/printAst/PrintAst.expected

335 lines
17 KiB
Plaintext

A.java:
# 0| [CompilationUnit] A
# 8| 1: [Class] A
#-----| -4: (Javadoc)
# 1| 1: [Javadoc] /** Another javadoc */
# 1| 0: [JavadocText] Another javadoc
# 3| 2: [Javadoc] /** A class ... */
# 4| 0: [JavadocText] A class
# 6| 1: [JavadocTag] @author
# 6| 0: [JavadocText] someone
# 9| 3: [Interface] Ann1
# 10| 1: [Method] value
# 10| 3: [TypeAccess] String
# 11| 2: [Method] nest
# 11| 3: [ArrayTypeAccess] ...[]
# 11| 0: [TypeAccess] Ann2
# 14| 4: [Interface] Ann2
# 15| 1: [Method] value
# 15| 3: [TypeAccess] int
# 20| 5: [Method] doSomething
#-----| 0: (Javadoc)
# 18| 1: [Javadoc] /** Does something */
# 18| 0: [JavadocText] Does something
#-----| 1: (Annotations)
# 19| 1: [Annotation] Deprecated
# 20| 3: [TypeAccess] int
#-----| 4: (Parameters)
# 20| 0: [Parameter] text
#-----| -1: (Annotations)
# 20| 1: [Annotation] SuppressWarnings
# 20| 1: [StringLiteral] "all"
# 20| 0: [TypeAccess] String
# 20| 5: [BlockStmt] { ... }
# 21| 0: [LocalVariableDeclStmt] var ...;
# 21| 0: [TypeAccess] int
# 21| 1: [LocalVariableDeclExpr] i
# 21| 0: [IntegerLiteral] 0
# 21| 2: [LocalVariableDeclExpr] j
# 21| 0: [IntegerLiteral] 1
# 23| 1: [ForStmt] for (...;...;...)
#-----| 0: (For Initializers)
# 23| 1: [AssignExpr] ...=...
# 23| 0: [VarAccess] i
# 23| 1: [IntegerLiteral] 0
# 23| 2: [AssignExpr] ...=...
# 23| 0: [VarAccess] j
# 23| 1: [IntegerLiteral] 1
# 23| 1: [LTExpr] ... < ...
# 23| 0: [VarAccess] i
# 23| 1: [IntegerLiteral] 3
# 23| 2: [BlockStmt] { ... }
# 23| 3: [PostIncExpr] ...++
# 23| 0: [VarAccess] i
# 25| 2: [ForStmt] for (...;...;...)
#-----| 0: (For Initializers)
# 25| 0: [TypeAccess] int
# 25| 1: [LocalVariableDeclExpr] m
# 25| 0: [IntegerLiteral] 0
# 25| 2: [LocalVariableDeclExpr] n
# 25| 0: [IntegerLiteral] 1
# 25| 1: [LTExpr] ... < ...
# 25| 0: [VarAccess] m
# 25| 1: [IntegerLiteral] 3
# 25| 2: [BlockStmt] { ... }
# 25| 3: [PostIncExpr] ...++
# 25| 0: [VarAccess] m
# 27| 3: [ReturnStmt] return ...
# 27| 0: [IntegerLiteral] 0
# 30| 6: [FieldDeclaration] int counter;
# 30| -1: [TypeAccess] int
# 30| 0: [IntegerLiteral] 1
# 32| 7: [BlockStmt] { ... }
# 33| 0: [ExprStmt] <Expr>;
# 33| 0: [AssignExpr] ...=...
# 33| 0: [VarAccess] counter
# 33| 1: [MethodCall] doSomething(...)
# 33| 0: [StringLiteral] "hi"
# 42| 8: [Method] doSomethingElse
#-----| 1: (Annotations)
# 36| 1: [Annotation] Ann1
# 37| 1: [StringLiteral] "a"
# 38| 2: [ArrayInit] {...}
# 39| 1: [Annotation] Ann2
# 40| 2: [Annotation] Ann2
# 40| 1: [IntegerLiteral] 7
# 42| 3: [TypeAccess] String
# 42| 5: [BlockStmt] { ... }
# 42| 0: [ReturnStmt] return ...
# 42| 0: [StringLiteral] "c"
# 44| 9: [Method] varDecls
# 44| 3: [TypeAccess] void
#-----| 4: (Parameters)
# 44| 0: [Parameter] things
# 44| 0: [ArrayTypeAccess] ...[]
# 44| 0: [TypeAccess] Object
# 44| 5: [BlockStmt] { ... }
# 45| 0: [TryStmt] try ...
# 45| -1: [BlockStmt] { ... }
# 46| 0: [EnhancedForStmt] for (... : ...)
#-----| 0: (Single Local Variable Declaration)
# 46| 0: [TypeAccess] Object
# 46| 1: [LocalVariableDeclExpr] thing
# 46| 1: [VarAccess] things
# 46| 2: [BlockStmt] { ... }
# 47| 0: [IfStmt] if (...)
# 47| 0: [InstanceOfExpr] ...instanceof...
# 47| 0: [VarAccess] thing
# 47| 1: [TypeAccess] Integer
# 47| 1: [BlockStmt] { ... }
# 48| 0: [ReturnStmt] return ...
# 50| 1: [IfStmt] if (...)
# 50| 0: [InstanceOfExpr] ...instanceof...
# 50| 0: [VarAccess] thing
#-----| 2: (Single Local Variable Declaration)
# 50| 0: [TypeAccess] String
# 50| 1: [LocalVariableDeclExpr] s
# 50| 1: [BlockStmt] { ... }
# 51| 0: [ThrowStmt] throw ...
# 51| 0: [ClassInstanceExpr] new RuntimeException(...)
# 51| -3: [TypeAccess] RuntimeException
# 51| 0: [VarAccess] s
# 53| 2: [SwitchStmt] switch (...)
# 53| -1: [VarAccess] thing
# 54| 0: [PatternCase] case <Pattern>
# 54| -1: [ExprStmt] <Expr>;
# 54| 0: [MethodCall] println(...)
# 54| -1: [VarAccess] System.out
# 54| -1: [TypeAccess] System
# 54| 0: [VarAccess] s
#-----| 0: (Single Local Variable Declaration)
# 54| 0: [TypeAccess] String
# 54| 1: [LocalVariableDeclExpr] s
# 55| 1: [PatternCase] case <Pattern>
# 55| -1: [ExprStmt] <Expr>;
# 55| 0: [MethodCall] println(...)
# 55| -1: [VarAccess] System.out
# 55| -1: [TypeAccess] System
# 55| 0: [AddExpr] ... + ...
# 55| 0: [StringLiteral] "An integer: "
# 55| 1: [VarAccess] i
#-----| 0: (Single Local Variable Declaration)
# 55| 0: [TypeAccess] Integer
# 55| 1: [LocalVariableDeclExpr] i
# 56| 2: [DefaultCase] default
# 56| -1: [BlockStmt] { ... }
# 58| 3: [SwitchStmt] switch (...)
# 58| -1: [VarAccess] thing
# 59| 0: [PatternCase] case <Pattern>
#-----| 0: (Single Local Variable Declaration)
# 59| 0: [TypeAccess] String
# 59| 1: [LocalVariableDeclExpr] s
# 60| 1: [ExprStmt] <Expr>;
# 60| 0: [MethodCall] println(...)
# 60| -1: [VarAccess] System.out
# 60| -1: [TypeAccess] System
# 60| 0: [VarAccess] s
# 61| 2: [BreakStmt] break
# 62| 3: [PatternCase] case <Pattern>
#-----| 0: (Single Local Variable Declaration)
# 62| 0: [TypeAccess] Integer
# 62| 1: [LocalVariableDeclExpr] i
# 63| 4: [ExprStmt] <Expr>;
# 63| 0: [MethodCall] println(...)
# 63| -1: [VarAccess] System.out
# 63| -1: [TypeAccess] System
# 63| 0: [AddExpr] ... + ...
# 63| 0: [StringLiteral] "An integer:"
# 63| 1: [VarAccess] i
# 64| 5: [BreakStmt] break
# 65| 6: [DefaultCase] default
# 66| 7: [BreakStmt] break
# 68| 4: [LocalVariableDeclStmt] var ...;
# 68| 1: [LocalVariableDeclExpr] thingAsString
# 68| 0: [SwitchExpr] switch (...)
# 68| -1: [VarAccess] thing
# 69| 0: [PatternCase] case <Pattern>
# 69| -1: [VarAccess] s
#-----| 0: (Single Local Variable Declaration)
# 69| 0: [TypeAccess] String
# 69| 1: [LocalVariableDeclExpr] s
# 70| 1: [PatternCase] case <Pattern>
# 70| -1: [AddExpr] ... + ...
# 70| 0: [StringLiteral] "An integer: "
# 70| 1: [VarAccess] i
#-----| 0: (Single Local Variable Declaration)
# 70| 0: [TypeAccess] Integer
# 70| 1: [LocalVariableDeclExpr] i
# 71| 2: [DefaultCase] default
# 71| -1: [StringLiteral] "Something else"
# 73| 5: [LocalVariableDeclStmt] var ...;
# 73| 1: [LocalVariableDeclExpr] thingAsString2
# 73| 0: [SwitchExpr] switch (...)
# 73| -1: [VarAccess] thing
# 74| 0: [PatternCase] case <Pattern>
#-----| 0: (Single Local Variable Declaration)
# 74| 0: [TypeAccess] String
# 74| 1: [LocalVariableDeclExpr] s
# 75| 1: [YieldStmt] yield ...
# 75| 0: [VarAccess] s
# 76| 2: [PatternCase] case <Pattern>
#-----| 0: (Single Local Variable Declaration)
# 76| 0: [TypeAccess] Integer
# 76| 1: [LocalVariableDeclExpr] i
# 77| 3: [YieldStmt] yield ...
# 77| 0: [AddExpr] ... + ...
# 77| 0: [StringLiteral] "An integer: "
# 77| 1: [VarAccess] i
# 78| 4: [DefaultCase] default
# 79| 5: [YieldStmt] yield ...
# 79| 0: [StringLiteral] "Something else"
# 81| 6: [LocalVariableDeclStmt] var ...;
# 81| 1: [LocalVariableDeclExpr] nullTest
# 81| 0: [SwitchExpr] switch (...)
# 81| -1: [VarAccess] thing
# 82| 0: [ConstCase] case ...
# 82| -1: [StringLiteral] "Null"
# 82| 0: [NullLiteral] null
# 83| 1: [DefaultCase] default
# 83| -1: [StringLiteral] "Not null"
# 85| 7: [LocalVariableDeclStmt] var ...;
# 85| 1: [LocalVariableDeclExpr] whenTest
# 85| 0: [SwitchExpr] switch (...)
# 85| -1: [CastExpr] (...)...
# 85| 0: [TypeAccess] String
# 85| 1: [VarAccess] thing
# 86| 0: [ConstCase] case ...
# 86| -1: [StringLiteral] "It's constant"
# 86| 0: [StringLiteral] "constant"
# 87| 1: [PatternCase] case <Pattern>
# 87| -3: [EQExpr] ... == ...
# 87| 0: [MethodCall] length(...)
# 87| -1: [VarAccess] s
# 87| 1: [IntegerLiteral] 3
# 87| -1: [StringLiteral] "It's 3 letters long"
#-----| 0: (Single Local Variable Declaration)
# 87| 0: [TypeAccess] String
# 87| 1: [LocalVariableDeclExpr] s
# 88| 2: [PatternCase] case <Pattern>
# 88| -3: [EQExpr] ... == ...
# 88| 0: [MethodCall] length(...)
# 88| -1: [VarAccess] s
# 88| 1: [IntegerLiteral] 5
# 88| -1: [StringLiteral] "it's 5 letters long"
#-----| 0: (Single Local Variable Declaration)
# 88| 0: [TypeAccess] String
# 88| 1: [LocalVariableDeclExpr] s
# 89| 3: [DefaultCase] default
# 89| -1: [StringLiteral] "It's something else"
# 91| 8: [LocalVariableDeclStmt] var ...;
# 91| 1: [LocalVariableDeclExpr] nullDefaultTest
# 91| 0: [SwitchExpr] switch (...)
# 91| -1: [VarAccess] thing
# 92| 0: [PatternCase] case <Pattern>
# 92| -1: [StringLiteral] "It's a string"
#-----| 0: (Single Local Variable Declaration)
# 92| 0: [TypeAccess] String
# 92| 1: [LocalVariableDeclExpr] s
# 93| 1: [NullDefaultCase] case null, default
# 93| -1: [StringLiteral] "It's something else"
# 93| 0: [NullLiteral] null
# 95| 9: [LocalVariableDeclStmt] var ...;
# 95| 1: [LocalVariableDeclExpr] qualifiedEnumTest
# 95| 0: [SwitchExpr] switch (...)
# 95| -1: [VarAccess] thing
# 96| 0: [ConstCase] case ...
# 96| -1: [StringLiteral] "It's E.A"
# 96| 0: [VarAccess] E.A
# 96| -1: [TypeAccess] E
# 97| 1: [DefaultCase] default
# 97| -1: [StringLiteral] "It's something else"
# 99| 10: [LocalVariableDeclStmt] var ...;
# 99| 1: [LocalVariableDeclExpr] unnecessaryQualifiedEnumTest
# 99| 0: [SwitchExpr] switch (...)
# 99| -1: [CastExpr] (...)...
# 99| 0: [TypeAccess] E
# 99| 1: [VarAccess] thing
# 100| 0: [ConstCase] case ...
# 100| -1: [StringLiteral] "It's E.A"
# 100| 0: [VarAccess] A
# 101| 1: [ConstCase] case ...
# 101| -1: [StringLiteral] "It's E.B"
# 101| 0: [VarAccess] E.B
# 101| -1: [TypeAccess] E
# 102| 2: [DefaultCase] default
# 102| -1: [StringLiteral] "It's something else"
# 104| 11: [LocalVariableDeclStmt] var ...;
# 104| 1: [LocalVariableDeclExpr] recordPatterntest
# 104| 0: [SwitchExpr] switch (...)
# 104| -1: [VarAccess] thing
# 105| 0: [PatternCase] case <Pattern>
# 105| -1: [VarAccess] field
# 105| 0: [RecordPatternExpr] Middle(...)
# 105| 0: [RecordPatternExpr] Inner(...)
# 105| -1: [TypeAccess] String
# 105| 0: [LocalVariableDeclExpr] field
# 106| 1: [DefaultCase] default
# 106| -1: [StringLiteral] "Doesn't match pattern Middle(Inner(...))"
# 110| 0: [CatchClause] catch (...)
#-----| 0: (Single Local Variable Declaration)
# 110| 0: [TypeAccess] RuntimeException
# 110| 1: [LocalVariableDeclExpr] rte
# 110| 1: [BlockStmt] { ... }
# 111| 0: [ReturnStmt] return ...
# 115| 10: [Class] E
# 119| 3: [FieldDeclaration] E A;
#-----| -3: (Javadoc)
# 116| 1: [Javadoc] /** Javadoc for enum constant */
# 117| 0: [JavadocText] Javadoc for enum constant
# 119| -1: [TypeAccess] E
# 119| 0: [ClassInstanceExpr] new E(...)
# 119| -3: [TypeAccess] E
# 120| 4: [FieldDeclaration] E B;
#-----| -3: (Javadoc)
# 116| 1: [Javadoc] /** Javadoc for enum constant */
# 117| 0: [JavadocText] Javadoc for enum constant
# 120| -1: [TypeAccess] E
# 120| 0: [ClassInstanceExpr] new E(...)
# 120| -3: [TypeAccess] E
# 121| 5: [FieldDeclaration] E C;
#-----| -3: (Javadoc)
# 116| 1: [Javadoc] /** Javadoc for enum constant */
# 117| 0: [JavadocText] Javadoc for enum constant
# 121| -1: [TypeAccess] E
# 121| 0: [ClassInstanceExpr] new E(...)
# 121| -3: [TypeAccess] E
# 127| 11: [FieldDeclaration] int i, ...;
#-----| -3: (Javadoc)
# 124| 1: [Javadoc] /** Javadoc for fields */
# 125| 0: [JavadocText] Javadoc for fields
# 127| -1: [TypeAccess] int
# 130| 2: [Class] Inner
# 130| 2: [FieldDeclaration] String field;
# 131| 3: [Class] Middle
# 131| 2: [FieldDeclaration] Inner inner;