mirror of
https://github.com/github/codeql.git
synced 2025-12-20 18:56:32 +01:00
335 lines
17 KiB
Plaintext
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;
|