Files
codeql/java/ql/integration-tests/posix-only/kotlin/gradle_kotlinx_serialization/PrintAst.expected
2022-10-06 12:40:04 +01:00

472 lines
22 KiB
Plaintext

app/src/main/kotlin/testProject/App.kt:
# 0| [CompilationUnit] App
# 7| 1: [Class] Project
# 0| 1: [Constructor] Project
#-----| 4: (Parameters)
# 0| 0: [Parameter] seen1
# 0| 0: [TypeAccess] int
# 0| 1: [Parameter] name
# 0| 0: [TypeAccess] String
# 0| 2: [Parameter] language
# 0| 0: [TypeAccess] int
# 0| 3: [Parameter] serializationConstructorMarker
# 0| 0: [TypeAccess] SerializationConstructorMarker
# 7| 5: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [WhenExpr] when ...
# 7| 0: [WhenBranch] ... -> ...
# 7| 0: [ValueNEExpr] ... (value not-equals) ...
# 7| 0: [IntegerLiteral] 3
# 7| 1: [AndBitwiseExpr] ... & ...
# 7| 0: [IntegerLiteral] 3
# 7| 1: [VarAccess] seen1
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] throwMissingFieldException(...)
# 7| -1: [TypeAccess] PluginExceptionsKt
# 7| 0: [VarAccess] seen1
# 7| 1: [IntegerLiteral] 3
# 7| 2: [MethodAccess] getDescriptor(...)
# 7| -1: [VarAccess] INSTANCE
# 7| 1: [SuperConstructorInvocationStmt] super(...)
# 7| 2: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] Project.this.name
# 7| -1: [ThisAccess] Project.this
# 7| 0: [TypeAccess] Project
# 7| 1: [VarAccess] name
# 7| 3: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] Project.this.language
# 7| -1: [ThisAccess] Project.this
# 7| 0: [TypeAccess] Project
# 7| 1: [VarAccess] language
# 0| 2: [Method] component1
# 0| 3: [TypeAccess] String
# 0| 5: [BlockStmt] { ... }
# 0| 0: [ReturnStmt] return ...
# 0| 0: [VarAccess] this.name
# 0| -1: [ThisAccess] this
# 0| 3: [Method] component2
# 0| 3: [TypeAccess] int
# 0| 5: [BlockStmt] { ... }
# 0| 0: [ReturnStmt] return ...
# 0| 0: [VarAccess] this.language
# 0| -1: [ThisAccess] this
# 0| 4: [Method] copy
# 0| 3: [TypeAccess] Project
#-----| 4: (Parameters)
# 8| 0: [Parameter] name
# 8| 0: [TypeAccess] String
# 8| 1: [Parameter] language
# 8| 0: [TypeAccess] int
# 0| 5: [BlockStmt] { ... }
# 0| 0: [ReturnStmt] return ...
# 0| 0: [ClassInstanceExpr] new Project(...)
# 0| -3: [TypeAccess] Project
# 0| 0: [VarAccess] name
# 0| 1: [VarAccess] language
# 0| 5: [Method] copy$default
# 0| 3: [TypeAccess] Project
#-----| 4: (Parameters)
# 0| 0: [Parameter] p0
# 0| 0: [TypeAccess] Project
# 0| 1: [Parameter] p1
# 0| 0: [TypeAccess] String
# 0| 2: [Parameter] p2
# 0| 0: [TypeAccess] int
# 0| 3: [Parameter] p3
# 0| 0: [TypeAccess] int
# 0| 4: [Parameter] p4
# 0| 0: [TypeAccess] Object
# 0| 5: [BlockStmt] { ... }
# 0| 0: [IfStmt] if (...)
# 0| 0: [EQExpr] ... == ...
# 0| 0: [AndBitwiseExpr] ... & ...
# 0| 0: [IntegerLiteral] 1
# 0| 1: [VarAccess] p3
# 0| 1: [IntegerLiteral] 0
# 0| 1: [ExprStmt] <Expr>;
# 0| 0: [AssignExpr] ...=...
# 0| 0: [VarAccess] p1
# 0| 1: [VarAccess] p0.name
# 0| -1: [VarAccess] p0
# 0| 1: [IfStmt] if (...)
# 0| 0: [EQExpr] ... == ...
# 0| 0: [AndBitwiseExpr] ... & ...
# 0| 0: [IntegerLiteral] 2
# 0| 1: [VarAccess] p3
# 0| 1: [IntegerLiteral] 0
# 0| 1: [ExprStmt] <Expr>;
# 0| 0: [AssignExpr] ...=...
# 0| 0: [VarAccess] p2
# 0| 1: [VarAccess] p0.language
# 0| -1: [VarAccess] p0
# 0| 2: [ReturnStmt] return ...
# 0| 0: [MethodAccess] copy(...)
# 0| -1: [VarAccess] p0
# 0| 0: [VarAccess] p1
# 0| 1: [VarAccess] p2
# 0| 6: [Method] equals
# 0| 3: [TypeAccess] boolean
#-----| 4: (Parameters)
# 0| 0: [Parameter] other
# 0| 0: [TypeAccess] Object
# 0| 5: [BlockStmt] { ... }
# 0| 0: [ExprStmt] <Expr>;
# 0| 0: [WhenExpr] when ...
# 0| 0: [WhenBranch] ... -> ...
# 0| 0: [EQExpr] ... == ...
# 0| 0: [ThisAccess] this
# 0| 1: [VarAccess] other
# 0| 1: [ReturnStmt] return ...
# 0| 0: [BooleanLiteral] true
# 0| 1: [ExprStmt] <Expr>;
# 0| 0: [WhenExpr] when ...
# 0| 0: [WhenBranch] ... -> ...
# 0| 0: [NotInstanceOfExpr] ... !is ...
# 0| 0: [VarAccess] other
# 0| 1: [TypeAccess] Project
# 0| 1: [ReturnStmt] return ...
# 0| 0: [BooleanLiteral] false
# 0| 2: [LocalVariableDeclStmt] var ...;
# 0| 1: [LocalVariableDeclExpr] tmp0_other_with_cast
# 0| 0: [CastExpr] (...)...
# 0| 0: [TypeAccess] Project
# 0| 1: [VarAccess] other
# 0| 3: [ExprStmt] <Expr>;
# 0| 0: [WhenExpr] when ...
# 0| 0: [WhenBranch] ... -> ...
# 0| 0: [ValueNEExpr] ... (value not-equals) ...
# 0| 0: [VarAccess] this.name
# 0| -1: [ThisAccess] this
# 0| 1: [VarAccess] tmp0_other_with_cast.name
# 0| -1: [VarAccess] tmp0_other_with_cast
# 0| 1: [ReturnStmt] return ...
# 0| 0: [BooleanLiteral] false
# 0| 4: [ExprStmt] <Expr>;
# 0| 0: [WhenExpr] when ...
# 0| 0: [WhenBranch] ... -> ...
# 0| 0: [ValueNEExpr] ... (value not-equals) ...
# 0| 0: [VarAccess] this.language
# 0| -1: [ThisAccess] this
# 0| 1: [VarAccess] tmp0_other_with_cast.language
# 0| -1: [VarAccess] tmp0_other_with_cast
# 0| 1: [ReturnStmt] return ...
# 0| 0: [BooleanLiteral] false
# 0| 5: [ReturnStmt] return ...
# 0| 0: [BooleanLiteral] true
# 0| 7: [Method] hashCode
# 0| 3: [TypeAccess] int
# 0| 5: [BlockStmt] { ... }
# 0| 0: [LocalVariableDeclStmt] var ...;
# 0| 1: [LocalVariableDeclExpr] result
# 0| 0: [MethodAccess] hashCode(...)
# 0| -1: [VarAccess] this.name
# 0| -1: [ThisAccess] this
# 0| 1: [ExprStmt] <Expr>;
# 0| 0: [AssignExpr] ...=...
# 0| 0: [VarAccess] result
# 0| 1: [AddExpr] ... + ...
# 0| 0: [MulExpr] ... * ...
# 0| 0: [VarAccess] result
# 0| 1: [IntegerLiteral] 31
# 0| 1: [MethodAccess] hashCode(...)
# 0| -1: [VarAccess] this.language
# 0| -1: [ThisAccess] this
# 0| 2: [ReturnStmt] return ...
# 0| 0: [VarAccess] result
# 0| 8: [Method] toString
# 0| 3: [TypeAccess] String
# 0| 5: [BlockStmt] { ... }
# 0| 0: [ReturnStmt] return ...
# 0| 0: [StringTemplateExpr] "..."
# 0| 0: [StringLiteral] Project(
# 0| 1: [StringLiteral] name=
# 0| 2: [VarAccess] this.name
# 0| -1: [ThisAccess] this
# 0| 3: [StringLiteral] ,
# 0| 4: [StringLiteral] language=
# 0| 5: [VarAccess] this.language
# 0| -1: [ThisAccess] this
# 0| 6: [StringLiteral] )
# 0| 9: [Method] write$Self
# 0| 3: [TypeAccess] Unit
#-----| 4: (Parameters)
# 0| 0: [Parameter] self
# 0| 0: [TypeAccess] Project
# 0| 1: [Parameter] output
# 0| 0: [TypeAccess] CompositeEncoder
# 0| 2: [Parameter] serialDesc
# 0| 0: [TypeAccess] SerialDescriptor
# 7| 5: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] encodeStringElement(...)
# 7| -1: [VarAccess] output
# 7| 0: [VarAccess] serialDesc
# 7| 1: [IntegerLiteral] 0
# 7| 2: [MethodAccess] getName(...)
# 7| -1: [VarAccess] self
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] encodeIntElement(...)
# 7| -1: [VarAccess] output
# 7| 0: [VarAccess] serialDesc
# 7| 1: [IntegerLiteral] 1
# 7| 2: [MethodAccess] getLanguage(...)
# 7| -1: [VarAccess] self
# 7| 10: [Class] $serializer
# 0| 1: [FieldDeclaration] SerialDescriptor descriptor;
# 0| -1: [TypeAccess] SerialDescriptor
# 0| 2: [Method] childSerializers
# 0| 3: [TypeAccess] KSerializer<?>[]
# 0| 0: [TypeAccess] KSerializer<?>
# 0| 0: [WildcardTypeAccess] ? ...
# 7| 5: [BlockStmt] { ... }
# 7| 0: [ReturnStmt] return ...
# 7| 0: [ArrayCreationExpr] new KSerializer<?>[]
# 7| -2: [ArrayInit] {...}
# 7| -1: [TypeAccess] KSerializer<?>
# 7| 0: [IntegerLiteral] 2
# 0| 3: [Method] deserialize
# 0| 3: [TypeAccess] Project
#-----| 4: (Parameters)
# 0| 0: [Parameter] decoder
# 0| 0: [TypeAccess] Decoder
# 7| 5: [BlockStmt] { ... }
# 7| 0: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp0_desc
# 7| 0: [MethodAccess] getDescriptor(...)
# 7| -1: [ThisAccess] this
# 7| 1: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp1_flag
# 7| 0: [BooleanLiteral] true
# 7| 2: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp2_index
# 7| 0: [IntegerLiteral] 0
# 7| 3: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp3_bitMask0
# 7| 0: [IntegerLiteral] 0
# 7| 4: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp4_local0
# 7| 0: [NullLiteral] null
# 7| 5: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp5_local1
# 7| 0: [IntegerLiteral] 0
# 7| 6: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp6_input
# 7| 0: [MethodAccess] beginStructure(...)
# 7| -1: [VarAccess] decoder
# 7| 0: [VarAccess] tmp0_desc
# 7| 7: [ExprStmt] <Expr>;
# 7| 0: [WhenExpr] when ...
# 7| 0: [WhenBranch] ... -> ...
# 7| 0: [MethodAccess] decodeSequentially(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 1: [BlockStmt] { ... }
# 7| 0: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp4_local0
# 7| 1: [MethodAccess] decodeStringElement(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 0: [VarAccess] tmp0_desc
# 7| 1: [IntegerLiteral] 0
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [OrBitwiseExpr] ... | ...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [IntegerLiteral] 1
# 7| 1: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp5_local1
# 7| 1: [MethodAccess] decodeIntElement(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 0: [VarAccess] tmp0_desc
# 7| 1: [IntegerLiteral] 1
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [OrBitwiseExpr] ... | ...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [IntegerLiteral] 2
# 7| 1: [WhenBranch] ... -> ...
# 7| 0: [BooleanLiteral] true
# 7| 1: [WhileStmt] while (...)
# 7| 0: [VarAccess] tmp1_flag
# 7| 1: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp2_index
# 7| 1: [MethodAccess] decodeElementIndex(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 0: [VarAccess] tmp0_desc
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [WhenExpr] when ...
# 7| 0: [WhenBranch] ... -> ...
# 7| 0: [ValueEQExpr] ... (value equals) ...
# 7| 0: [VarAccess] tmp2_index
# 7| 1: [IntegerLiteral] -1
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp1_flag
# 7| 1: [BooleanLiteral] false
# 7| 1: [WhenBranch] ... -> ...
# 7| 0: [ValueEQExpr] ... (value equals) ...
# 7| 0: [VarAccess] tmp2_index
# 7| 1: [IntegerLiteral] 0
# 7| 1: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp4_local0
# 7| 1: [MethodAccess] decodeStringElement(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 0: [VarAccess] tmp0_desc
# 7| 1: [IntegerLiteral] 0
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [OrBitwiseExpr] ... | ...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [IntegerLiteral] 1
# 7| 2: [WhenBranch] ... -> ...
# 7| 0: [ValueEQExpr] ... (value equals) ...
# 7| 0: [VarAccess] tmp2_index
# 7| 1: [IntegerLiteral] 1
# 7| 1: [BlockStmt] { ... }
# 7| 0: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp5_local1
# 7| 1: [MethodAccess] decodeIntElement(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 0: [VarAccess] tmp0_desc
# 7| 1: [IntegerLiteral] 1
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [OrBitwiseExpr] ... | ...
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [IntegerLiteral] 2
# 7| 3: [WhenBranch] ... -> ...
# 7| 0: [BooleanLiteral] true
# 7| 1: [ThrowStmt] throw ...
# 7| 0: [ClassInstanceExpr] new UnknownFieldException(...)
# 7| -3: [TypeAccess] UnknownFieldException
# 7| 0: [VarAccess] tmp2_index
# 7| 8: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] endStructure(...)
# 7| -1: [VarAccess] tmp6_input
# 7| 0: [VarAccess] tmp0_desc
# 7| 9: [ReturnStmt] return ...
# 7| 0: [ClassInstanceExpr] new Project(...)
# 7| -3: [TypeAccess] Project
# 7| 0: [VarAccess] tmp3_bitMask0
# 7| 1: [VarAccess] tmp4_local0
# 7| 2: [VarAccess] tmp5_local1
# 7| 3: [NullLiteral] null
# 0| 4: [Method] getDescriptor
# 0| 3: [TypeAccess] SerialDescriptor
# 0| 5: [BlockStmt] { ... }
# 0| 0: [ReturnStmt] return ...
# 0| 0: [VarAccess] this.descriptor
# 0| -1: [ThisAccess] this
# 0| 5: [Method] serialize
# 0| 3: [TypeAccess] Unit
#-----| 4: (Parameters)
# 0| 0: [Parameter] encoder
# 0| 0: [TypeAccess] Encoder
# 0| 1: [Parameter] value
# 0| 0: [TypeAccess] Project
# 7| 5: [BlockStmt] { ... }
# 7| 0: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp0_desc
# 7| 0: [MethodAccess] getDescriptor(...)
# 7| -1: [ThisAccess] this
# 7| 1: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp1_output
# 7| 0: [MethodAccess] beginStructure(...)
# 7| -1: [VarAccess] encoder
# 7| 0: [VarAccess] tmp0_desc
# 7| 2: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] write$Self(...)
# 7| -1: [TypeAccess] Project
# 7| 0: [VarAccess] value
# 7| 1: [VarAccess] tmp1_output
# 7| 2: [VarAccess] tmp0_desc
# 7| 3: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] endStructure(...)
# 7| -1: [VarAccess] tmp1_output
# 7| 0: [VarAccess] tmp0_desc
# 7| 6: [Constructor] $serializer
# 7| 5: [BlockStmt] { ... }
# 7| 0: [SuperConstructorInvocationStmt] super(...)
# 7| 1: [BlockStmt] { ... }
# 7| 0: [LocalVariableDeclStmt] var ...;
# 7| 1: [LocalVariableDeclExpr] tmp0_serialDesc
# 7| 0: [ClassInstanceExpr] new PluginGeneratedSerialDescriptor(...)
# 7| -3: [TypeAccess] PluginGeneratedSerialDescriptor
# 7| 0: [StringLiteral] testProject.Project
# 7| 1: [ThisAccess] $serializer.this
# 7| 0: [TypeAccess] $serializer
# 7| 2: [IntegerLiteral] 2
# 7| 1: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] addElement(...)
# 7| -1: [VarAccess] tmp0_serialDesc
# 7| 0: [StringLiteral] name
# 7| 1: [BooleanLiteral] false
# 7| 2: [ExprStmt] <Expr>;
# 7| 0: [MethodAccess] addElement(...)
# 7| -1: [VarAccess] tmp0_serialDesc
# 7| 0: [StringLiteral] language
# 7| 1: [BooleanLiteral] false
# 7| 3: [ExprStmt] <Expr>;
# 7| 0: [AssignExpr] ...=...
# 7| 0: [VarAccess] $serializer.this.descriptor
# 7| -1: [ThisAccess] $serializer.this
# 7| 0: [TypeAccess] $serializer
# 7| 1: [VarAccess] tmp0_serialDesc
# 7| 11: [Class] Companion
# 0| 1: [Method] serializer
# 0| 3: [TypeAccess] KSerializer<Project>
# 0| 0: [TypeAccess] Project
# 7| 5: [BlockStmt] { ... }
# 7| 0: [ReturnStmt] return ...
# 7| 0: [VarAccess] INSTANCE
# 7| 2: [Constructor] Companion
# 7| 5: [BlockStmt] { ... }
# 7| 0: [SuperConstructorInvocationStmt] super(...)
# 7| 1: [BlockStmt] { ... }
# 8| 12: [Constructor] Project
#-----| 4: (Parameters)
# 8| 0: [Parameter] name
# 8| 0: [TypeAccess] String
# 8| 1: [Parameter] language
# 8| 0: [TypeAccess] int
# 7| 5: [BlockStmt] { ... }
# 7| 0: [SuperConstructorInvocationStmt] super(...)
# 8| 1: [BlockStmt] { ... }
# 8| 0: [ExprStmt] <Expr>;
# 8| 0: [KtInitializerAssignExpr] ...=...
# 8| 0: [VarAccess] name
# 8| 1: [ExprStmt] <Expr>;
# 8| 0: [KtInitializerAssignExpr] ...=...
# 8| 0: [VarAccess] language
# 8| 13: [FieldDeclaration] String name;
# 8| -1: [TypeAccess] String
# 8| 0: [VarAccess] name
# 8| 14: [Method] getName
# 8| 3: [TypeAccess] String
# 8| 5: [BlockStmt] { ... }
# 8| 0: [ReturnStmt] return ...
# 8| 0: [VarAccess] this.name
# 8| -1: [ThisAccess] this
# 8| 15: [Method] getLanguage
# 8| 3: [TypeAccess] int
# 8| 5: [BlockStmt] { ... }
# 8| 0: [ReturnStmt] return ...
# 8| 0: [VarAccess] this.language
# 8| -1: [ThisAccess] this
# 8| 16: [FieldDeclaration] int language;
# 8| -1: [TypeAccess] int
# 8| 0: [VarAccess] language