mirror of
https://github.com/github/codeql.git
synced 2025-12-17 09:13:20 +01:00
1772 lines
88 KiB
Plaintext
1772 lines
88 KiB
Plaintext
reflection.kt:
|
|
# 0| [CompilationUnit] reflection
|
|
# 0| 1: [Class] ReflectionKt
|
|
# 47| 1: [ExtensionMethod] getLastChar
|
|
# 47| 3: [TypeAccess] char
|
|
#-----| 4: (Parameters)
|
|
# 46| 0: [Parameter] <this>
|
|
# 46| 0: [TypeAccess] String
|
|
# 47| 5: [BlockStmt] { ... }
|
|
# 47| 0: [ReturnStmt] return ...
|
|
# 47| 0: [MethodCall] charAt(...)
|
|
# 47| -1: [ExtensionReceiverAccess] this
|
|
# 47| 0: [SubExpr] ... - ...
|
|
# 47| 0: [MethodCall] length(...)
|
|
# 47| -1: [ExtensionReceiverAccess] this
|
|
# 47| 1: [IntegerLiteral] 1
|
|
# 49| 2: [Method] fn2
|
|
# 49| 3: [TypeAccess] Unit
|
|
# 49| 5: [BlockStmt] { ... }
|
|
# 50| 0: [ExprStmt] <Expr>;
|
|
# 50| 0: [MethodCall] println(...)
|
|
# 50| -1: [TypeAccess] ConsoleKt
|
|
# 50| 0: [MethodCall] get(...)
|
|
# 50| -1: [PropertyRefExpr] ...::...
|
|
# 50| -4: [AnonymousClass] new KProperty1<String,Character>(...) { ... }
|
|
# 50| 1: [Constructor]
|
|
# 50| 5: [BlockStmt] { ... }
|
|
# 50| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 50| 2: [Method] get
|
|
#-----| 4: (Parameters)
|
|
# 50| 0: [Parameter] a0
|
|
# 50| 5: [BlockStmt] { ... }
|
|
# 50| 0: [ReturnStmt] return ...
|
|
# 50| 0: [MethodCall] getLastChar(...)
|
|
# 50| -1: [TypeAccess] ReflectionKt
|
|
# 50| 0: [VarAccess] a0
|
|
# 50| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 50| 0: [Parameter] a0
|
|
# 50| 5: [BlockStmt] { ... }
|
|
# 50| 0: [ReturnStmt] return ...
|
|
# 50| 0: [MethodCall] get(...)
|
|
# 50| -1: [ThisAccess] this
|
|
# 50| 0: [VarAccess] a0
|
|
# 50| -3: [TypeAccess] KProperty1<String,Character>
|
|
# 50| 0: [TypeAccess] String
|
|
# 50| 1: [TypeAccess] Character
|
|
# 50| 0: [StringLiteral] "abc"
|
|
# 51| 1: [ExprStmt] <Expr>;
|
|
# 51| 0: [MethodCall] println(...)
|
|
# 51| -1: [TypeAccess] ConsoleKt
|
|
# 51| 0: [MethodCall] get(...)
|
|
# 51| -1: [PropertyRefExpr] ...::...
|
|
# 51| -4: [AnonymousClass] new KProperty0<Character>(...) { ... }
|
|
# 51| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 51| 0: [Parameter] <extensionReceiver>
|
|
# 51| 5: [BlockStmt] { ... }
|
|
# 51| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 51| 1: [ExprStmt] <Expr>;
|
|
# 51| 0: [AssignExpr] ...=...
|
|
# 51| 0: [VarAccess] this.<extensionReceiver>
|
|
# 51| -1: [ThisAccess] this
|
|
# 51| 1: [VarAccess] <extensionReceiver>
|
|
# 51| 2: [FieldDeclaration] String <extensionReceiver>;
|
|
# 51| -1: [TypeAccess] String
|
|
# 51| 3: [Method] get
|
|
# 51| 5: [BlockStmt] { ... }
|
|
# 51| 0: [ReturnStmt] return ...
|
|
# 51| 0: [MethodCall] getLastChar(...)
|
|
# 51| -1: [TypeAccess] ReflectionKt
|
|
# 51| 0: [VarAccess] this.<extensionReceiver>
|
|
# 51| -1: [ThisAccess] this
|
|
# 51| 4: [Method] invoke
|
|
# 51| 5: [BlockStmt] { ... }
|
|
# 51| 0: [ReturnStmt] return ...
|
|
# 51| 0: [MethodCall] get(...)
|
|
# 51| -1: [ThisAccess] this
|
|
# 51| -3: [TypeAccess] KProperty0<Character>
|
|
# 51| 0: [TypeAccess] Character
|
|
# 51| 0: [StringLiteral] "abcd"
|
|
# 54| 3: [ExtensionMethod] ext1
|
|
#-----| 2: (Generic Parameters)
|
|
# 54| 0: [TypeVariable] T2
|
|
# 54| 3: [TypeAccess] String
|
|
#-----| 4: (Parameters)
|
|
# 54| 0: [Parameter] <this>
|
|
# 54| 0: [TypeAccess] Generic<T2>
|
|
# 54| 0: [TypeAccess] T2
|
|
# 54| 5: [BlockStmt] { ... }
|
|
# 54| 0: [ReturnStmt] return ...
|
|
# 54| 0: [MethodCall] toString(...)
|
|
# 54| -1: [ExtensionReceiverAccess] this
|
|
# 56| 4: [ExtensionMethod] ext2
|
|
# 56| 3: [TypeAccess] String
|
|
#-----| 4: (Parameters)
|
|
# 56| 0: [Parameter] <this>
|
|
# 56| 0: [TypeAccess] Generic<Integer>
|
|
# 56| 0: [TypeAccess] Integer
|
|
# 56| 5: [BlockStmt] { ... }
|
|
# 56| 0: [ReturnStmt] return ...
|
|
# 56| 0: [MethodCall] toString(...)
|
|
# 56| -1: [ExtensionReceiverAccess] this
|
|
# 94| 5: [Method] fn
|
|
#-----| 2: (Generic Parameters)
|
|
# 94| 0: [TypeVariable] T
|
|
# 94| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 94| 0: [Parameter] value
|
|
# 94| 0: [TypeAccess] T
|
|
# 94| 5: [BlockStmt] { ... }
|
|
# 96| 6: [Method] test
|
|
# 96| 3: [TypeAccess] Unit
|
|
# 96| 5: [BlockStmt] { ... }
|
|
# 97| 0: [ExprStmt] <Expr>;
|
|
# 97| 0: [MethodCall] fn11(...)
|
|
# 97| -3: [TypeAccess] Class2<String>
|
|
# 97| 0: [TypeAccess] String
|
|
# 97| -2: [TypeAccess] String
|
|
# 97| -1: [TypeAccess] ReflectionKt
|
|
# 97| 0: [StringLiteral] ""
|
|
# 97| 1: [MemberRefExpr] ...::...
|
|
# 97| -4: [AnonymousClass] new Function1<String,Class2<String>>(...) { ... }
|
|
# 97| 1: [Constructor]
|
|
# 97| 5: [BlockStmt] { ... }
|
|
# 97| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 97| 0: [IntegerLiteral] 1
|
|
# 97| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 97| 0: [Parameter] a0
|
|
# 97| 5: [BlockStmt] { ... }
|
|
# 97| 0: [ReturnStmt] return ...
|
|
# 97| 0: [ClassInstanceExpr] new Class2<String>(...)
|
|
# 97| -3: [TypeAccess] Class2<String>
|
|
# 97| 0: [TypeAccess] String
|
|
# 97| 0: [VarAccess] a0
|
|
# 97| -3: [TypeAccess] Function1<String,Class2<String>>
|
|
# 97| 0: [TypeAccess] String
|
|
# 97| 1: [TypeAccess] Class2<String>
|
|
# 97| 0: [TypeAccess] String
|
|
# 98| 1: [ExprStmt] <Expr>;
|
|
# 98| 0: [MethodCall] fn11(...)
|
|
# 98| -3: [TypeAccess] Unit
|
|
# 98| -2: [TypeAccess] String
|
|
# 98| -1: [TypeAccess] ReflectionKt
|
|
# 98| 0: [StringLiteral] ""
|
|
# 98| 1: [MemberRefExpr] ...::...
|
|
# 98| -4: [AnonymousClass] new Function1<String,Unit>(...) { ... }
|
|
# 98| 1: [Constructor]
|
|
# 98| 5: [BlockStmt] { ... }
|
|
# 98| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 98| 0: [IntegerLiteral] 1
|
|
# 98| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 98| 0: [Parameter] a0
|
|
# 98| 5: [BlockStmt] { ... }
|
|
# 98| 0: [ReturnStmt] return ...
|
|
# 98| 0: [MethodCall] fn(...)
|
|
# 98| -2: [TypeAccess] String
|
|
# 98| -1: [TypeAccess] ReflectionKt
|
|
# 98| 0: [VarAccess] a0
|
|
# 98| -3: [TypeAccess] Function1<String,Unit>
|
|
# 98| 0: [TypeAccess] String
|
|
# 98| 1: [TypeAccess] Unit
|
|
# 99| 2: [ExprStmt] <Expr>;
|
|
# 99| 0: [MethodCall] fn12(...)
|
|
# 99| -3: [TypeAccess] Inner<String>
|
|
# 99| 0: [TypeAccess] String
|
|
# 99| 1: [TypeAccess] Integer
|
|
# 99| -2: [TypeAccess] String
|
|
# 99| -1: [TypeAccess] ReflectionKt
|
|
# 99| 0: [StringLiteral] ""
|
|
# 99| 1: [MemberRefExpr] ...::...
|
|
# 99| -4: [AnonymousClass] new Function1<String,Inner<String>>(...) { ... }
|
|
# 99| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 99| 0: [Parameter] <dispatchReceiver>
|
|
# 99| 5: [BlockStmt] { ... }
|
|
# 99| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 99| 0: [IntegerLiteral] 1
|
|
# 99| 1: [ExprStmt] <Expr>;
|
|
# 99| 0: [AssignExpr] ...=...
|
|
# 99| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 99| -1: [ThisAccess] this
|
|
# 99| 1: [VarAccess] <dispatchReceiver>
|
|
# 99| 2: [FieldDeclaration] Class2<Integer> <dispatchReceiver>;
|
|
# 99| -1: [TypeAccess] Class2<Integer>
|
|
# 99| 0: [TypeAccess] Integer
|
|
# 99| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 99| 0: [Parameter] a0
|
|
# 99| 5: [BlockStmt] { ... }
|
|
# 99| 0: [ReturnStmt] return ...
|
|
# 99| 0: [ClassInstanceExpr] new Inner<String>(...)
|
|
# 99| -3: [TypeAccess] Inner<String>
|
|
# 99| 0: [TypeAccess] String
|
|
# 99| -2: [VarAccess] this.<dispatchReceiver>
|
|
# 99| -1: [ThisAccess] this
|
|
# 99| 0: [VarAccess] a0
|
|
# 99| -3: [TypeAccess] Function1<String,Inner<String>>
|
|
# 99| 0: [TypeAccess] String
|
|
# 99| 1: [TypeAccess] Inner<String>
|
|
# 99| 0: [TypeAccess] String
|
|
# 99| 0: [ClassInstanceExpr] new Class2<Integer>(...)
|
|
# 99| -3: [TypeAccess] Class2<Integer>
|
|
# 99| 0: [TypeAccess] Integer
|
|
# 99| 0: [IntegerLiteral] 5
|
|
# 102| 7: [Method] fn11
|
|
#-----| 2: (Generic Parameters)
|
|
# 102| 0: [TypeVariable] T
|
|
# 102| 1: [TypeVariable] R
|
|
# 102| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 102| 0: [Parameter] l
|
|
# 102| 0: [TypeAccess] T
|
|
# 102| 1: [Parameter] transform
|
|
# 102| 0: [TypeAccess] Function1<? super T,? extends R>
|
|
# 102| 0: [WildcardTypeAccess] ? ...
|
|
# 102| 1: [TypeAccess] T
|
|
# 102| 1: [WildcardTypeAccess] ? ...
|
|
# 102| 0: [TypeAccess] R
|
|
# 102| 5: [BlockStmt] { ... }
|
|
# 103| 8: [Method] fn12
|
|
#-----| 2: (Generic Parameters)
|
|
# 103| 0: [TypeVariable] T1
|
|
# 103| 1: [TypeVariable] R
|
|
# 103| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 103| 0: [Parameter] l
|
|
# 103| 0: [TypeAccess] T1
|
|
# 103| 1: [Parameter] l2
|
|
# 103| 0: [TypeAccess] Function1<? super T1,? extends R>
|
|
# 103| 0: [WildcardTypeAccess] ? ...
|
|
# 103| 1: [TypeAccess] T1
|
|
# 103| 1: [WildcardTypeAccess] ? ...
|
|
# 103| 0: [TypeAccess] R
|
|
# 103| 5: [BlockStmt] { ... }
|
|
# 121| 9: [Method] fn1
|
|
# 121| 3: [TypeAccess] int
|
|
# 121| 5: [BlockStmt] { ... }
|
|
# 121| 0: [ReturnStmt] return ...
|
|
# 121| 0: [IntegerLiteral] 5
|
|
# 123| 10: [Method] fn2
|
|
# 123| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 123| 0: [Parameter] f
|
|
# 123| 0: [TypeAccess] Function0<Unit>
|
|
# 123| 0: [TypeAccess] Unit
|
|
# 123| 5: [BlockStmt] { ... }
|
|
# 123| 0: [ReturnStmt] return ...
|
|
# 123| 0: [MethodCall] invoke(...)
|
|
# 123| -1: [VarAccess] f
|
|
# 125| 11: [Method] adapted
|
|
# 125| 3: [TypeAccess] Unit
|
|
# 125| 5: [BlockStmt] { ... }
|
|
# 126| 0: [ExprStmt] <Expr>;
|
|
# 126| 0: [MethodCall] fn2(...)
|
|
# 126| -1: [TypeAccess] ReflectionKt
|
|
# 126| 0: [StmtExpr] <Stmt>
|
|
# 126| 0: [BlockStmt] { ... }
|
|
# 126| 0: [LocalTypeDeclStmt] class ...
|
|
# 126| 0: [LocalClass]
|
|
# 126| 1: [Constructor]
|
|
# 126| 5: [BlockStmt] { ... }
|
|
# 126| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 126| 2: [Method] fn1
|
|
# 126| 3: [TypeAccess] Unit
|
|
# 126| 5: [BlockStmt] { ... }
|
|
# 126| 0: [ExprStmt] <Expr>;
|
|
# 126| 0: [ImplicitCoercionToUnitExpr] <implicit coercion to unit>
|
|
# 126| 0: [TypeAccess] Unit
|
|
# 126| 1: [MethodCall] fn1(...)
|
|
# 126| -1: [TypeAccess] ReflectionKt
|
|
# 126| 1: [ExprStmt] <Expr>;
|
|
# 126| 0: [MemberRefExpr] ...::...
|
|
# 126| -4: [AnonymousClass] new Function0<Unit>(...) { ... }
|
|
# 126| 1: [Constructor]
|
|
# 126| 5: [BlockStmt] { ... }
|
|
# 126| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 126| 0: [IntegerLiteral] 0
|
|
# 126| 2: [Method] invoke
|
|
# 126| 5: [BlockStmt] { ... }
|
|
# 126| 0: [ReturnStmt] return ...
|
|
# 126| 0: [MethodCall] fn1(...)
|
|
# 126| -1: [ClassInstanceExpr] new (...)
|
|
# 126| -3: [TypeAccess] Object
|
|
# 126| -3: [TypeAccess] Function0<Unit>
|
|
# 126| 0: [TypeAccess] Unit
|
|
# 129| 12: [Method] expectsOneParam
|
|
# 129| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 129| 0: [Parameter] f
|
|
# 129| 0: [TypeAccess] Function1<? super Integer,Integer>
|
|
# 129| 0: [WildcardTypeAccess] ? ...
|
|
# 129| 1: [TypeAccess] Integer
|
|
# 129| 1: [TypeAccess] Integer
|
|
# 129| 5: [BlockStmt] { ... }
|
|
# 129| 0: [ReturnStmt] return ...
|
|
# 129| 0: [MethodCall] invoke(...)
|
|
# 129| -1: [VarAccess] f
|
|
# 129| 0: [IntegerLiteral] 0
|
|
# 131| 13: [Method] takesOptionalParam
|
|
# 131| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 131| 0: [Parameter] x
|
|
# 131| 0: [TypeAccess] int
|
|
# 131| 1: [Parameter] y
|
|
# 131| 0: [TypeAccess] int
|
|
# 131| 5: [BlockStmt] { ... }
|
|
# 131| 0: [ReturnStmt] return ...
|
|
# 131| 0: [AddExpr] ... + ...
|
|
# 131| 0: [VarAccess] x
|
|
# 131| 1: [VarAccess] y
|
|
# 131| 14: [Method] takesOptionalParam$default
|
|
# 131| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 131| 0: [Parameter] p0
|
|
# 131| 0: [TypeAccess] int
|
|
# 131| 1: [Parameter] p1
|
|
# 131| 0: [TypeAccess] int
|
|
# 131| 2: [Parameter] p2
|
|
# 131| 0: [TypeAccess] int
|
|
# 131| 3: [Parameter] p3
|
|
# 131| 0: [TypeAccess] Object
|
|
# 131| 5: [BlockStmt] { ... }
|
|
# 131| 0: [IfStmt] if (...)
|
|
# 131| 0: [EQExpr] ... == ...
|
|
# 131| 0: [AndBitwiseExpr] ... & ...
|
|
# 131| 0: [IntegerLiteral] 2
|
|
# 131| 1: [VarAccess] p2
|
|
# 131| 1: [IntegerLiteral] 0
|
|
# 131| 1: [ExprStmt] <Expr>;
|
|
# 131| 0: [AssignExpr] ...=...
|
|
# 131| 0: [VarAccess] p1
|
|
# 131| 1: [IntegerLiteral] 0
|
|
# 131| 1: [ReturnStmt] return ...
|
|
# 131| 0: [MethodCall] takesOptionalParam(...)
|
|
# 131| -1: [TypeAccess] ReflectionKt
|
|
# 131| 0: [VarAccess] p0
|
|
# 131| 1: [VarAccess] p1
|
|
# 133| 15: [Method] adaptedParams
|
|
# 133| 3: [TypeAccess] Unit
|
|
# 133| 5: [BlockStmt] { ... }
|
|
# 134| 0: [ExprStmt] <Expr>;
|
|
# 134| 0: [ImplicitCoercionToUnitExpr] <implicit coercion to unit>
|
|
# 134| 0: [TypeAccess] Unit
|
|
# 134| 1: [MethodCall] expectsOneParam(...)
|
|
# 134| -1: [TypeAccess] ReflectionKt
|
|
# 134| 0: [StmtExpr] <Stmt>
|
|
# 134| 0: [BlockStmt] { ... }
|
|
# 134| 0: [LocalTypeDeclStmt] class ...
|
|
# 134| 0: [LocalClass]
|
|
# 134| 1: [Constructor]
|
|
# 134| 5: [BlockStmt] { ... }
|
|
# 134| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 134| 2: [Method] takesOptionalParam
|
|
# 134| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 134| 0: [Parameter] p0
|
|
# 134| 0: [TypeAccess] int
|
|
# 134| 5: [BlockStmt] { ... }
|
|
# 134| 0: [ReturnStmt] return ...
|
|
# 134| 0: [MethodCall] takesOptionalParam$default(...)
|
|
# 134| -1: [TypeAccess] ReflectionKt
|
|
# 134| 0: [VarAccess] p0
|
|
# 1| 1: [IntegerLiteral] 0
|
|
# 1| 2: [IntegerLiteral] 1
|
|
# 1| 3: [NullLiteral] null
|
|
# 134| 1: [ExprStmt] <Expr>;
|
|
# 134| 0: [MemberRefExpr] ...::...
|
|
# 134| -4: [AnonymousClass] new Function1<Integer,Integer>(...) { ... }
|
|
# 134| 1: [Constructor]
|
|
# 134| 5: [BlockStmt] { ... }
|
|
# 134| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 134| 0: [IntegerLiteral] 1
|
|
# 134| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 134| 0: [Parameter] a0
|
|
# 134| 5: [BlockStmt] { ... }
|
|
# 134| 0: [ReturnStmt] return ...
|
|
# 134| 0: [MethodCall] takesOptionalParam(...)
|
|
# 134| -1: [ClassInstanceExpr] new (...)
|
|
# 134| -3: [TypeAccess] Object
|
|
# 134| 0: [VarAccess] a0
|
|
# 134| -3: [TypeAccess] Function1<Integer,Integer>
|
|
# 134| 0: [TypeAccess] Integer
|
|
# 134| 1: [TypeAccess] Integer
|
|
# 137| 16: [Method] expectsOneParamAndReceiver
|
|
# 137| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 137| 0: [Parameter] f
|
|
# 137| 0: [TypeAccess] Function2<? super MemberOptionalsTest,? super Integer,Integer>
|
|
# 137| 0: [WildcardTypeAccess] ? ...
|
|
# 137| 1: [TypeAccess] MemberOptionalsTest
|
|
# 137| 1: [WildcardTypeAccess] ? ...
|
|
# 137| 1: [TypeAccess] Integer
|
|
# 137| 2: [TypeAccess] Integer
|
|
# 137| 5: [BlockStmt] { ... }
|
|
# 143| 17: [Method] memberAdaptedParams
|
|
# 143| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 143| 0: [Parameter] m
|
|
# 143| 0: [TypeAccess] MemberOptionalsTest
|
|
# 143| 5: [BlockStmt] { ... }
|
|
# 144| 0: [ExprStmt] <Expr>;
|
|
# 144| 0: [ImplicitCoercionToUnitExpr] <implicit coercion to unit>
|
|
# 144| 0: [TypeAccess] Unit
|
|
# 144| 1: [MethodCall] expectsOneParam(...)
|
|
# 144| -1: [TypeAccess] ReflectionKt
|
|
# 144| 0: [StmtExpr] <Stmt>
|
|
# 144| 0: [BlockStmt] { ... }
|
|
# 144| 0: [LocalTypeDeclStmt] class ...
|
|
# 144| 0: [LocalClass]
|
|
# 144| 1: [Constructor]
|
|
# 144| 5: [BlockStmt] { ... }
|
|
# 144| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 144| 2: [ExtensionMethod] takesOptionalParam
|
|
# 144| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 144| 0: [Parameter] receiver
|
|
# 144| 0: [TypeAccess] MemberOptionalsTest
|
|
# 144| 1: [Parameter] p0
|
|
# 144| 0: [TypeAccess] int
|
|
# 144| 5: [BlockStmt] { ... }
|
|
# 144| 0: [ReturnStmt] return ...
|
|
# 144| 0: [MethodCall] takesOptionalParam$default(...)
|
|
# 144| -1: [TypeAccess] MemberOptionalsTest
|
|
# 144| 0: [ExtensionReceiverAccess] this
|
|
# 144| 1: [VarAccess] p0
|
|
# 1| 2: [IntegerLiteral] 0
|
|
# 1| 3: [IntegerLiteral] 1
|
|
# 1| 4: [NullLiteral] null
|
|
# 144| 1: [ExprStmt] <Expr>;
|
|
# 144| 0: [MemberRefExpr] ...::...
|
|
# 144| -4: [AnonymousClass] new Function1<Integer,Integer>(...) { ... }
|
|
# 144| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 144| 0: [Parameter] <extensionReceiver>
|
|
# 144| 5: [BlockStmt] { ... }
|
|
# 144| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 144| 0: [IntegerLiteral] 1
|
|
# 144| 1: [ExprStmt] <Expr>;
|
|
# 144| 0: [AssignExpr] ...=...
|
|
# 144| 0: [VarAccess] this.<extensionReceiver>
|
|
# 144| -1: [ThisAccess] this
|
|
# 144| 1: [VarAccess] <extensionReceiver>
|
|
# 144| 2: [FieldDeclaration] MemberOptionalsTest <extensionReceiver>;
|
|
# 144| -1: [TypeAccess] MemberOptionalsTest
|
|
# 144| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 144| 0: [Parameter] a0
|
|
# 144| 5: [BlockStmt] { ... }
|
|
# 144| 0: [ReturnStmt] return ...
|
|
# 144| 0: [MethodCall] takesOptionalParam(...)
|
|
# 144| -1: [ClassInstanceExpr] new (...)
|
|
# 144| -3: [TypeAccess] Object
|
|
# 144| 0: [VarAccess] this.<extensionReceiver>
|
|
# 144| -1: [ThisAccess] this
|
|
# 144| 1: [VarAccess] a0
|
|
# 144| -3: [TypeAccess] Function1<Integer,Integer>
|
|
# 144| 0: [TypeAccess] Integer
|
|
# 144| 1: [TypeAccess] Integer
|
|
# 144| 0: [VarAccess] m
|
|
# 145| 1: [ExprStmt] <Expr>;
|
|
# 145| 0: [MethodCall] expectsOneParamAndReceiver(...)
|
|
# 145| -1: [TypeAccess] ReflectionKt
|
|
# 145| 0: [StmtExpr] <Stmt>
|
|
# 145| 0: [BlockStmt] { ... }
|
|
# 145| 0: [LocalTypeDeclStmt] class ...
|
|
# 145| 0: [LocalClass]
|
|
# 145| 1: [Constructor]
|
|
# 145| 5: [BlockStmt] { ... }
|
|
# 145| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 145| 2: [Method] takesOptionalParam
|
|
# 145| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 145| 0: [Parameter] p0
|
|
# 145| 0: [TypeAccess] MemberOptionalsTest
|
|
# 145| 1: [Parameter] p1
|
|
# 145| 0: [TypeAccess] int
|
|
# 145| 5: [BlockStmt] { ... }
|
|
# 145| 0: [ReturnStmt] return ...
|
|
# 145| 0: [MethodCall] takesOptionalParam$default(...)
|
|
# 145| -1: [TypeAccess] MemberOptionalsTest
|
|
# 145| 0: [VarAccess] p0
|
|
# 145| 1: [VarAccess] p1
|
|
# 1| 2: [IntegerLiteral] 0
|
|
# 1| 3: [IntegerLiteral] 1
|
|
# 1| 4: [NullLiteral] null
|
|
# 145| 1: [ExprStmt] <Expr>;
|
|
# 145| 0: [MemberRefExpr] ...::...
|
|
# 145| -4: [AnonymousClass] new Function2<MemberOptionalsTest,Integer,Integer>(...) { ... }
|
|
# 145| 1: [Constructor]
|
|
# 145| 5: [BlockStmt] { ... }
|
|
# 145| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 145| 0: [IntegerLiteral] 2
|
|
# 145| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 145| 0: [Parameter] a0
|
|
# 145| 1: [Parameter] a1
|
|
# 145| 5: [BlockStmt] { ... }
|
|
# 145| 0: [ReturnStmt] return ...
|
|
# 145| 0: [MethodCall] takesOptionalParam(...)
|
|
# 145| -1: [ClassInstanceExpr] new (...)
|
|
# 145| -3: [TypeAccess] Object
|
|
# 145| 0: [VarAccess] a0
|
|
# 145| 1: [VarAccess] a1
|
|
# 145| -3: [TypeAccess] Function2<MemberOptionalsTest,Integer,Integer>
|
|
# 145| 0: [TypeAccess] MemberOptionalsTest
|
|
# 145| 1: [TypeAccess] Integer
|
|
# 145| 2: [TypeAccess] Integer
|
|
# 148| 18: [Method] expectsOneParamAndExtension
|
|
# 148| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 148| 0: [Parameter] f
|
|
# 148| 0: [TypeAccess] Function2<? super String,? super Integer,Integer>
|
|
# 148| 0: [WildcardTypeAccess] ? ...
|
|
# 148| 1: [TypeAccess] String
|
|
# 148| 1: [WildcardTypeAccess] ? ...
|
|
# 148| 1: [TypeAccess] Integer
|
|
# 148| 2: [TypeAccess] Integer
|
|
# 148| 5: [BlockStmt] { ... }
|
|
# 150| 19: [ExtensionMethod] extTakesOptionalParam
|
|
# 150| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 150| 0: [Parameter] <this>
|
|
# 150| 0: [TypeAccess] String
|
|
# 150| 1: [Parameter] x
|
|
# 150| 0: [TypeAccess] int
|
|
# 150| 2: [Parameter] y
|
|
# 150| 0: [TypeAccess] int
|
|
# 150| 5: [BlockStmt] { ... }
|
|
# 150| 0: [ReturnStmt] return ...
|
|
# 150| 0: [AddExpr] ... + ...
|
|
# 150| 0: [VarAccess] x
|
|
# 150| 1: [VarAccess] y
|
|
# 150| 20: [ExtensionMethod] extTakesOptionalParam$default
|
|
# 150| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 150| 0: [Parameter] p0
|
|
# 150| 0: [TypeAccess] String
|
|
# 150| 1: [Parameter] p1
|
|
# 150| 0: [TypeAccess] int
|
|
# 150| 2: [Parameter] p2
|
|
# 150| 0: [TypeAccess] int
|
|
# 150| 3: [Parameter] p3
|
|
# 150| 0: [TypeAccess] int
|
|
# 150| 4: [Parameter] p4
|
|
# 150| 0: [TypeAccess] Object
|
|
# 150| 5: [BlockStmt] { ... }
|
|
# 150| 0: [IfStmt] if (...)
|
|
# 150| 0: [EQExpr] ... == ...
|
|
# 150| 0: [AndBitwiseExpr] ... & ...
|
|
# 150| 0: [IntegerLiteral] 2
|
|
# 150| 1: [VarAccess] p3
|
|
# 150| 1: [IntegerLiteral] 0
|
|
# 150| 1: [ExprStmt] <Expr>;
|
|
# 150| 0: [AssignExpr] ...=...
|
|
# 150| 0: [VarAccess] p2
|
|
# 150| 1: [IntegerLiteral] 0
|
|
# 150| 1: [ReturnStmt] return ...
|
|
# 150| 0: [MethodCall] extTakesOptionalParam(...)
|
|
# 150| -1: [TypeAccess] ReflectionKt
|
|
# 150| 0: [ExtensionReceiverAccess] this
|
|
# 150| 1: [VarAccess] p1
|
|
# 150| 2: [VarAccess] p2
|
|
# 152| 21: [Method] extensionAdaptedParams
|
|
# 152| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 152| 0: [Parameter] s
|
|
# 152| 0: [TypeAccess] String
|
|
# 152| 5: [BlockStmt] { ... }
|
|
# 153| 0: [ExprStmt] <Expr>;
|
|
# 153| 0: [ImplicitCoercionToUnitExpr] <implicit coercion to unit>
|
|
# 153| 0: [TypeAccess] Unit
|
|
# 153| 1: [MethodCall] expectsOneParam(...)
|
|
# 153| -1: [TypeAccess] ReflectionKt
|
|
# 153| 0: [StmtExpr] <Stmt>
|
|
# 153| 0: [BlockStmt] { ... }
|
|
# 153| 0: [LocalTypeDeclStmt] class ...
|
|
# 153| 0: [LocalClass]
|
|
# 153| 1: [Constructor]
|
|
# 153| 5: [BlockStmt] { ... }
|
|
# 153| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 153| 2: [ExtensionMethod] extTakesOptionalParam
|
|
# 153| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 153| 0: [Parameter] receiver
|
|
# 153| 0: [TypeAccess] String
|
|
# 153| 1: [Parameter] p0
|
|
# 153| 0: [TypeAccess] int
|
|
# 153| 5: [BlockStmt] { ... }
|
|
# 153| 0: [ReturnStmt] return ...
|
|
# 153| 0: [MethodCall] extTakesOptionalParam$default(...)
|
|
# 153| -1: [TypeAccess] ReflectionKt
|
|
# 153| 0: [ExtensionReceiverAccess] this
|
|
# 153| 1: [VarAccess] p0
|
|
# 1| 2: [IntegerLiteral] 0
|
|
# 1| 3: [IntegerLiteral] 1
|
|
# 1| 4: [NullLiteral] null
|
|
# 153| 1: [ExprStmt] <Expr>;
|
|
# 153| 0: [MemberRefExpr] ...::...
|
|
# 153| -4: [AnonymousClass] new Function1<Integer,Integer>(...) { ... }
|
|
# 153| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 153| 0: [Parameter] <extensionReceiver>
|
|
# 153| 5: [BlockStmt] { ... }
|
|
# 153| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 153| 0: [IntegerLiteral] 1
|
|
# 153| 1: [ExprStmt] <Expr>;
|
|
# 153| 0: [AssignExpr] ...=...
|
|
# 153| 0: [VarAccess] this.<extensionReceiver>
|
|
# 153| -1: [ThisAccess] this
|
|
# 153| 1: [VarAccess] <extensionReceiver>
|
|
# 153| 2: [FieldDeclaration] String <extensionReceiver>;
|
|
# 153| -1: [TypeAccess] String
|
|
# 153| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 153| 0: [Parameter] a0
|
|
# 153| 5: [BlockStmt] { ... }
|
|
# 153| 0: [ReturnStmt] return ...
|
|
# 153| 0: [MethodCall] extTakesOptionalParam(...)
|
|
# 153| -1: [ClassInstanceExpr] new (...)
|
|
# 153| -3: [TypeAccess] Object
|
|
# 153| 0: [VarAccess] this.<extensionReceiver>
|
|
# 153| -1: [ThisAccess] this
|
|
# 153| 1: [VarAccess] a0
|
|
# 153| -3: [TypeAccess] Function1<Integer,Integer>
|
|
# 153| 0: [TypeAccess] Integer
|
|
# 153| 1: [TypeAccess] Integer
|
|
# 153| 0: [VarAccess] s
|
|
# 154| 1: [ExprStmt] <Expr>;
|
|
# 154| 0: [MethodCall] expectsOneParamAndExtension(...)
|
|
# 154| -1: [TypeAccess] ReflectionKt
|
|
# 154| 0: [StmtExpr] <Stmt>
|
|
# 154| 0: [BlockStmt] { ... }
|
|
# 154| 0: [LocalTypeDeclStmt] class ...
|
|
# 154| 0: [LocalClass]
|
|
# 154| 1: [Constructor]
|
|
# 154| 5: [BlockStmt] { ... }
|
|
# 154| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 154| 2: [Method] extTakesOptionalParam
|
|
# 154| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 154| 0: [Parameter] p0
|
|
# 154| 0: [TypeAccess] String
|
|
# 154| 1: [Parameter] p1
|
|
# 154| 0: [TypeAccess] int
|
|
# 154| 5: [BlockStmt] { ... }
|
|
# 154| 0: [ReturnStmt] return ...
|
|
# 154| 0: [MethodCall] extTakesOptionalParam$default(...)
|
|
# 154| -1: [TypeAccess] ReflectionKt
|
|
# 154| 0: [VarAccess] p0
|
|
# 154| 1: [VarAccess] p1
|
|
# 1| 2: [IntegerLiteral] 0
|
|
# 1| 3: [IntegerLiteral] 1
|
|
# 1| 4: [NullLiteral] null
|
|
# 154| 1: [ExprStmt] <Expr>;
|
|
# 154| 0: [MemberRefExpr] ...::...
|
|
# 154| -4: [AnonymousClass] new Function2<String,Integer,Integer>(...) { ... }
|
|
# 154| 1: [Constructor]
|
|
# 154| 5: [BlockStmt] { ... }
|
|
# 154| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 154| 0: [IntegerLiteral] 2
|
|
# 154| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 154| 0: [Parameter] a0
|
|
# 154| 1: [Parameter] a1
|
|
# 154| 5: [BlockStmt] { ... }
|
|
# 154| 0: [ReturnStmt] return ...
|
|
# 154| 0: [MethodCall] extTakesOptionalParam(...)
|
|
# 154| -1: [ClassInstanceExpr] new (...)
|
|
# 154| -3: [TypeAccess] Object
|
|
# 154| 0: [VarAccess] a0
|
|
# 154| 1: [VarAccess] a1
|
|
# 154| -3: [TypeAccess] Function2<String,Integer,Integer>
|
|
# 154| 0: [TypeAccess] String
|
|
# 154| 1: [TypeAccess] Integer
|
|
# 154| 2: [TypeAccess] Integer
|
|
# 159| 22: [Method] expectsOneParamCons
|
|
# 159| 3: [TypeAccess] ConstructorOptional
|
|
#-----| 4: (Parameters)
|
|
# 159| 0: [Parameter] f
|
|
# 159| 0: [TypeAccess] Function1<? super Integer,ConstructorOptional>
|
|
# 159| 0: [WildcardTypeAccess] ? ...
|
|
# 159| 1: [TypeAccess] Integer
|
|
# 159| 1: [TypeAccess] ConstructorOptional
|
|
# 159| 5: [BlockStmt] { ... }
|
|
# 159| 0: [ReturnStmt] return ...
|
|
# 159| 0: [MethodCall] invoke(...)
|
|
# 159| -1: [VarAccess] f
|
|
# 159| 0: [IntegerLiteral] 0
|
|
# 161| 23: [Method] constructorAdaptedParams
|
|
# 161| 3: [TypeAccess] Unit
|
|
# 161| 5: [BlockStmt] { ... }
|
|
# 162| 0: [ExprStmt] <Expr>;
|
|
# 162| 0: [ImplicitCoercionToUnitExpr] <implicit coercion to unit>
|
|
# 162| 0: [TypeAccess] Unit
|
|
# 162| 1: [MethodCall] expectsOneParamCons(...)
|
|
# 162| -1: [TypeAccess] ReflectionKt
|
|
# 162| 0: [StmtExpr] <Stmt>
|
|
# 162| 0: [BlockStmt] { ... }
|
|
# 162| 0: [LocalTypeDeclStmt] class ...
|
|
# 162| 0: [LocalClass]
|
|
# 162| 1: [Constructor]
|
|
# 162| 5: [BlockStmt] { ... }
|
|
# 162| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 162| 2: [Method] <init>
|
|
# 162| 3: [TypeAccess] ConstructorOptional
|
|
#-----| 4: (Parameters)
|
|
# 162| 0: [Parameter] p0
|
|
# 162| 0: [TypeAccess] int
|
|
# 162| 5: [BlockStmt] { ... }
|
|
# 162| 0: [ReturnStmt] return ...
|
|
# 162| 0: [ClassInstanceExpr] new ConstructorOptional(...)
|
|
# 162| -3: [TypeAccess] ConstructorOptional
|
|
# 162| 0: [VarAccess] p0
|
|
# 1| 1: [IntegerLiteral] 0
|
|
# 1| 2: [IntegerLiteral] 1
|
|
# 1| 3: [NullLiteral] null
|
|
# 162| 1: [ExprStmt] <Expr>;
|
|
# 162| 0: [MemberRefExpr] ...::...
|
|
# 162| -4: [AnonymousClass] new Function1<Integer,ConstructorOptional>(...) { ... }
|
|
# 162| 1: [Constructor]
|
|
# 162| 5: [BlockStmt] { ... }
|
|
# 162| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 162| 0: [IntegerLiteral] 1
|
|
# 162| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 162| 0: [Parameter] a0
|
|
# 162| 5: [BlockStmt] { ... }
|
|
# 162| 0: [ReturnStmt] return ...
|
|
# 162| 0: [MethodCall] <init>(...)
|
|
# 162| -1: [ClassInstanceExpr] new (...)
|
|
# 162| -3: [TypeAccess] Object
|
|
# 162| 0: [VarAccess] a0
|
|
# 162| -3: [TypeAccess] Function1<Integer,ConstructorOptional>
|
|
# 162| 0: [TypeAccess] Integer
|
|
# 162| 1: [TypeAccess] ConstructorOptional
|
|
# 5| 2: [Class] Reflection
|
|
# 5| 1: [Constructor] Reflection
|
|
# 5| 5: [BlockStmt] { ... }
|
|
# 5| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 5| 1: [BlockStmt] { ... }
|
|
# 6| 2: [Method] fn
|
|
# 6| 3: [TypeAccess] Unit
|
|
# 6| 5: [BlockStmt] { ... }
|
|
# 7| 0: [LocalVariableDeclStmt] var ...;
|
|
# 7| 1: [LocalVariableDeclExpr] ref
|
|
# 7| 0: [MemberRefExpr] ...::...
|
|
# 7| -4: [AnonymousClass] new Function2<Ccc,Integer,Double>(...) { ... }
|
|
# 7| 1: [Constructor]
|
|
# 7| 5: [BlockStmt] { ... }
|
|
# 7| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 7| 0: [IntegerLiteral] 2
|
|
# 7| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 7| 0: [Parameter] a0
|
|
# 7| 1: [Parameter] a1
|
|
# 7| 5: [BlockStmt] { ... }
|
|
# 7| 0: [ReturnStmt] return ...
|
|
# 7| 0: [MethodCall] m(...)
|
|
# 7| -1: [VarAccess] a0
|
|
# 7| 0: [VarAccess] a1
|
|
# 7| -3: [TypeAccess] Function2<Ccc,Integer,Double>
|
|
# 7| 0: [TypeAccess] Ccc
|
|
# 7| 1: [TypeAccess] Integer
|
|
# 7| 2: [TypeAccess] Double
|
|
# 8| 1: [ExprStmt] <Expr>;
|
|
# 8| 0: [MethodCall] println(...)
|
|
# 8| -1: [TypeAccess] ConsoleKt
|
|
# 8| 0: [MethodCall] getName(...)
|
|
# 8| -1: [VarAccess] ref
|
|
# 10| 2: [LocalVariableDeclStmt] var ...;
|
|
# 10| 1: [LocalVariableDeclExpr] x0
|
|
# 10| 0: [PropertyRefExpr] ...::...
|
|
# 10| -4: [AnonymousClass] new KProperty1<C,Integer>(...) { ... }
|
|
# 10| 1: [Constructor]
|
|
# 10| 5: [BlockStmt] { ... }
|
|
# 10| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 10| 2: [Method] get
|
|
#-----| 4: (Parameters)
|
|
# 10| 0: [Parameter] a0
|
|
# 10| 5: [BlockStmt] { ... }
|
|
# 10| 0: [ReturnStmt] return ...
|
|
# 10| 0: [MethodCall] getP0(...)
|
|
# 10| -1: [VarAccess] a0
|
|
# 10| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 10| 0: [Parameter] a0
|
|
# 10| 5: [BlockStmt] { ... }
|
|
# 10| 0: [ReturnStmt] return ...
|
|
# 10| 0: [MethodCall] get(...)
|
|
# 10| -1: [ThisAccess] this
|
|
# 10| 0: [VarAccess] a0
|
|
# 10| -3: [TypeAccess] KProperty1<C,Integer>
|
|
# 10| 0: [TypeAccess] C
|
|
# 10| 1: [TypeAccess] Integer
|
|
# 11| 3: [LocalVariableDeclStmt] var ...;
|
|
# 11| 1: [LocalVariableDeclExpr] x1
|
|
# 11| 0: [MethodCall] get(...)
|
|
# 11| -1: [VarAccess] x0
|
|
# 11| 0: [ClassInstanceExpr] new C(...)
|
|
# 11| -3: [TypeAccess] C
|
|
# 12| 4: [LocalVariableDeclStmt] var ...;
|
|
# 12| 1: [LocalVariableDeclExpr] x2
|
|
# 12| 0: [MethodCall] getName(...)
|
|
# 12| -1: [VarAccess] x0
|
|
# 13| 5: [LocalVariableDeclStmt] var ...;
|
|
# 13| 1: [LocalVariableDeclExpr] x3
|
|
# 13| 0: [MethodCall] getGetter(...)
|
|
# 13| -1: [VarAccess] x0
|
|
# 14| 6: [LocalVariableDeclStmt] var ...;
|
|
# 14| 1: [LocalVariableDeclExpr] x4
|
|
# 14| 0: [MemberRefExpr] ...::...
|
|
# 14| -4: [AnonymousClass] new Function1<C,Integer>(...) { ... }
|
|
# 14| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 14| 0: [Parameter] <dispatchReceiver>
|
|
# 14| 5: [BlockStmt] { ... }
|
|
# 14| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 14| 0: [IntegerLiteral] 1
|
|
# 14| 1: [ExprStmt] <Expr>;
|
|
# 14| 0: [AssignExpr] ...=...
|
|
# 14| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 14| -1: [ThisAccess] this
|
|
# 14| 1: [VarAccess] <dispatchReceiver>
|
|
# 14| 2: [FieldDeclaration] KProperty1<C,Integer> <dispatchReceiver>;
|
|
# 14| -1: [TypeAccess] KProperty1<C,Integer>
|
|
# 14| 0: [TypeAccess] C
|
|
# 14| 1: [TypeAccess] Integer
|
|
# 14| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 14| 0: [Parameter] a0
|
|
# 14| 5: [BlockStmt] { ... }
|
|
# 14| 0: [ReturnStmt] return ...
|
|
# 14| 0: [MethodCall] get(...)
|
|
# 14| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 14| -1: [ThisAccess] this
|
|
# 14| 0: [VarAccess] a0
|
|
# 14| -3: [TypeAccess] Function1<C,Integer>
|
|
# 14| 0: [TypeAccess] C
|
|
# 14| 1: [TypeAccess] Integer
|
|
# 14| 0: [VarAccess] x0
|
|
# 15| 7: [LocalVariableDeclStmt] var ...;
|
|
# 15| 1: [LocalVariableDeclExpr] x5
|
|
# 15| 0: [PropertyRefExpr] ...::...
|
|
# 15| -4: [AnonymousClass] new KProperty0<Integer>(...) { ... }
|
|
# 15| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 15| 0: [Parameter] <dispatchReceiver>
|
|
# 15| 5: [BlockStmt] { ... }
|
|
# 15| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 15| 1: [ExprStmt] <Expr>;
|
|
# 15| 0: [AssignExpr] ...=...
|
|
# 15| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 15| -1: [ThisAccess] this
|
|
# 15| 1: [VarAccess] <dispatchReceiver>
|
|
# 15| 2: [FieldDeclaration] C <dispatchReceiver>;
|
|
# 15| -1: [TypeAccess] C
|
|
# 15| 3: [Method] get
|
|
# 15| 5: [BlockStmt] { ... }
|
|
# 15| 0: [ReturnStmt] return ...
|
|
# 15| 0: [MethodCall] getP0(...)
|
|
# 15| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 15| -1: [ThisAccess] this
|
|
# 15| 4: [Method] invoke
|
|
# 15| 5: [BlockStmt] { ... }
|
|
# 15| 0: [ReturnStmt] return ...
|
|
# 15| 0: [MethodCall] get(...)
|
|
# 15| -1: [ThisAccess] this
|
|
# 15| -3: [TypeAccess] KProperty0<Integer>
|
|
# 15| 0: [TypeAccess] Integer
|
|
# 15| 0: [ClassInstanceExpr] new C(...)
|
|
# 15| -3: [TypeAccess] C
|
|
# 17| 8: [LocalVariableDeclStmt] var ...;
|
|
# 17| 1: [LocalVariableDeclExpr] y0
|
|
# 17| 0: [PropertyRefExpr] ...::...
|
|
# 17| -4: [AnonymousClass] new KMutableProperty1<C,Integer>(...) { ... }
|
|
# 17| 1: [Constructor]
|
|
# 17| 5: [BlockStmt] { ... }
|
|
# 17| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 17| 2: [Method] get
|
|
#-----| 4: (Parameters)
|
|
# 17| 0: [Parameter] a0
|
|
# 17| 5: [BlockStmt] { ... }
|
|
# 17| 0: [ReturnStmt] return ...
|
|
# 17| 0: [MethodCall] getP1(...)
|
|
# 17| -1: [VarAccess] a0
|
|
# 17| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 17| 0: [Parameter] a0
|
|
# 17| 5: [BlockStmt] { ... }
|
|
# 17| 0: [ReturnStmt] return ...
|
|
# 17| 0: [MethodCall] get(...)
|
|
# 17| -1: [ThisAccess] this
|
|
# 17| 0: [VarAccess] a0
|
|
# 17| 4: [Method] set
|
|
#-----| 4: (Parameters)
|
|
# 17| 0: [Parameter] a0
|
|
# 17| 1: [Parameter] a1
|
|
# 17| 5: [BlockStmt] { ... }
|
|
# 17| 0: [ReturnStmt] return ...
|
|
# 17| 0: [MethodCall] setP1(...)
|
|
# 17| -1: [VarAccess] a0
|
|
# 17| 0: [VarAccess] a1
|
|
# 17| -3: [TypeAccess] KMutableProperty1<C,Integer>
|
|
# 17| 0: [TypeAccess] C
|
|
# 17| 1: [TypeAccess] Integer
|
|
# 18| 9: [LocalVariableDeclStmt] var ...;
|
|
# 18| 1: [LocalVariableDeclExpr] y1
|
|
# 18| 0: [MethodCall] set(...)
|
|
# 18| -1: [VarAccess] y0
|
|
# 18| 0: [ClassInstanceExpr] new C(...)
|
|
# 18| -3: [TypeAccess] C
|
|
# 18| 1: [IntegerLiteral] 5
|
|
# 19| 10: [LocalVariableDeclStmt] var ...;
|
|
# 19| 1: [LocalVariableDeclExpr] y2
|
|
# 19| 0: [MethodCall] getName(...)
|
|
# 19| -1: [VarAccess] y0
|
|
# 20| 11: [LocalVariableDeclStmt] var ...;
|
|
# 20| 1: [LocalVariableDeclExpr] y3
|
|
# 20| 0: [MethodCall] getSetter(...)
|
|
# 20| -1: [VarAccess] y0
|
|
# 21| 12: [LocalVariableDeclStmt] var ...;
|
|
# 21| 1: [LocalVariableDeclExpr] y4
|
|
# 21| 0: [MemberRefExpr] ...::...
|
|
# 21| -4: [AnonymousClass] new Function2<C,Integer,Unit>(...) { ... }
|
|
# 21| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 21| 0: [Parameter] <dispatchReceiver>
|
|
# 21| 5: [BlockStmt] { ... }
|
|
# 21| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 21| 0: [IntegerLiteral] 2
|
|
# 21| 1: [ExprStmt] <Expr>;
|
|
# 21| 0: [AssignExpr] ...=...
|
|
# 21| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 21| -1: [ThisAccess] this
|
|
# 21| 1: [VarAccess] <dispatchReceiver>
|
|
# 21| 2: [FieldDeclaration] KMutableProperty1<C,Integer> <dispatchReceiver>;
|
|
# 21| -1: [TypeAccess] KMutableProperty1<C,Integer>
|
|
# 21| 0: [TypeAccess] C
|
|
# 21| 1: [TypeAccess] Integer
|
|
# 21| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 21| 0: [Parameter] a0
|
|
# 21| 1: [Parameter] a1
|
|
# 21| 5: [BlockStmt] { ... }
|
|
# 21| 0: [ReturnStmt] return ...
|
|
# 21| 0: [MethodCall] set(...)
|
|
# 21| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 21| -1: [ThisAccess] this
|
|
# 21| 0: [VarAccess] a0
|
|
# 21| 1: [VarAccess] a1
|
|
# 21| -3: [TypeAccess] Function2<C,Integer,Unit>
|
|
# 21| 0: [TypeAccess] C
|
|
# 21| 1: [TypeAccess] Integer
|
|
# 21| 2: [TypeAccess] Unit
|
|
# 21| 0: [VarAccess] y0
|
|
# 22| 13: [LocalVariableDeclStmt] var ...;
|
|
# 22| 1: [LocalVariableDeclExpr] y5
|
|
# 22| 0: [PropertyRefExpr] ...::...
|
|
# 22| -4: [AnonymousClass] new KMutableProperty0<Integer>(...) { ... }
|
|
# 22| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 22| 0: [Parameter] <dispatchReceiver>
|
|
# 22| 5: [BlockStmt] { ... }
|
|
# 22| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 22| 1: [ExprStmt] <Expr>;
|
|
# 22| 0: [AssignExpr] ...=...
|
|
# 22| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 22| -1: [ThisAccess] this
|
|
# 22| 1: [VarAccess] <dispatchReceiver>
|
|
# 22| 2: [FieldDeclaration] C <dispatchReceiver>;
|
|
# 22| -1: [TypeAccess] C
|
|
# 22| 3: [Method] get
|
|
# 22| 5: [BlockStmt] { ... }
|
|
# 22| 0: [ReturnStmt] return ...
|
|
# 22| 0: [MethodCall] getP1(...)
|
|
# 22| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 22| -1: [ThisAccess] this
|
|
# 22| 4: [Method] invoke
|
|
# 22| 5: [BlockStmt] { ... }
|
|
# 22| 0: [ReturnStmt] return ...
|
|
# 22| 0: [MethodCall] get(...)
|
|
# 22| -1: [ThisAccess] this
|
|
# 22| 5: [Method] set
|
|
#-----| 4: (Parameters)
|
|
# 22| 0: [Parameter] a0
|
|
# 22| 5: [BlockStmt] { ... }
|
|
# 22| 0: [ReturnStmt] return ...
|
|
# 22| 0: [MethodCall] setP1(...)
|
|
# 22| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 22| -1: [ThisAccess] this
|
|
# 22| 0: [VarAccess] a0
|
|
# 22| -3: [TypeAccess] KMutableProperty0<Integer>
|
|
# 22| 0: [TypeAccess] Integer
|
|
# 22| 0: [ClassInstanceExpr] new C(...)
|
|
# 22| -3: [TypeAccess] C
|
|
# 24| 14: [LocalVariableDeclStmt] var ...;
|
|
# 24| 1: [LocalVariableDeclExpr] prop
|
|
# 24| 0: [CastExpr] (...)...
|
|
# 24| 0: [TypeAccess] KProperty2<C,Integer,Integer>
|
|
# 24| 0: [TypeAccess] C
|
|
# 24| 1: [TypeAccess] Integer
|
|
# 24| 2: [TypeAccess] Integer
|
|
# 24| 1: [MethodCall] single(...)
|
|
# 24| -2: [TypeAccess] KCallable<?>
|
|
# 24| -1: [TypeAccess] CollectionsKt
|
|
# 24| 0: [MethodCall] getMembers(...)
|
|
# 24| -1: [TypeLiteral] C.class
|
|
# 24| 0: [TypeAccess] C
|
|
# 24| 1: [LambdaExpr] ...->...
|
|
# 24| -4: [AnonymousClass] new Function1<KCallable<?>,Boolean>(...) { ... }
|
|
# 24| 1: [Constructor]
|
|
# 24| 5: [BlockStmt] { ... }
|
|
# 24| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 24| 2: [Method] invoke
|
|
# 24| 3: [TypeAccess] boolean
|
|
#-----| 4: (Parameters)
|
|
# 24| 0: [Parameter] it
|
|
# 24| 0: [TypeAccess] KCallable<?>
|
|
# 24| 0: [WildcardTypeAccess] ? ...
|
|
# 24| 5: [BlockStmt] { ... }
|
|
# 24| 0: [ReturnStmt] return ...
|
|
# 24| 0: [ValueEQExpr] ... (value equals) ...
|
|
# 24| 0: [MethodCall] getName(...)
|
|
# 24| -1: [VarAccess] it
|
|
# 24| 1: [StringLiteral] "p3"
|
|
# 24| -3: [TypeAccess] Function1<KCallable<?>,Boolean>
|
|
# 24| 0: [TypeAccess] KCallable<?>
|
|
# 24| 1: [TypeAccess] Boolean
|
|
# 25| 15: [LocalVariableDeclStmt] var ...;
|
|
# 25| 1: [LocalVariableDeclExpr] z0
|
|
# 25| 0: [MethodCall] get(...)
|
|
# 25| -1: [VarAccess] prop
|
|
# 25| 0: [ClassInstanceExpr] new C(...)
|
|
# 25| -3: [TypeAccess] C
|
|
# 25| 1: [IntegerLiteral] 5
|
|
# 28| 3: [Class] Ccc
|
|
# 28| 1: [Constructor] Ccc
|
|
# 28| 5: [BlockStmt] { ... }
|
|
# 28| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 28| 1: [BlockStmt] { ... }
|
|
# 29| 2: [Method] m
|
|
# 29| 3: [TypeAccess] double
|
|
#-----| 4: (Parameters)
|
|
# 29| 0: [Parameter] i
|
|
# 29| 0: [TypeAccess] int
|
|
# 29| 5: [BlockStmt] { ... }
|
|
# 29| 0: [ReturnStmt] return ...
|
|
# 29| 0: [DoubleLiteral] 5.0
|
|
# 32| 4: [Class] C
|
|
# 32| 1: [Constructor] C
|
|
# 32| 5: [BlockStmt] { ... }
|
|
# 32| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 32| 1: [BlockStmt] { ... }
|
|
# 33| 0: [ExprStmt] <Expr>;
|
|
# 33| 0: [KtInitializerAssignExpr] ...=...
|
|
# 33| 0: [VarAccess] p0
|
|
# 34| 1: [ExprStmt] <Expr>;
|
|
# 34| 0: [KtInitializerAssignExpr] ...=...
|
|
# 34| 0: [VarAccess] p1
|
|
# 33| 2: [Method] getP0
|
|
# 33| 3: [TypeAccess] int
|
|
# 33| 5: [BlockStmt] { ... }
|
|
# 33| 0: [ReturnStmt] return ...
|
|
# 33| 0: [VarAccess] this.p0
|
|
# 33| -1: [ThisAccess] this
|
|
# 33| 3: [FieldDeclaration] int p0;
|
|
# 33| -1: [TypeAccess] int
|
|
# 33| 0: [IntegerLiteral] 1
|
|
# 34| 4: [Method] getP1
|
|
# 34| 3: [TypeAccess] int
|
|
# 34| 5: [BlockStmt] { ... }
|
|
# 34| 0: [ReturnStmt] return ...
|
|
# 34| 0: [VarAccess] this.p1
|
|
# 34| -1: [ThisAccess] this
|
|
# 34| 5: [FieldDeclaration] int p1;
|
|
# 34| -1: [TypeAccess] int
|
|
# 34| 0: [IntegerLiteral] 2
|
|
# 34| 6: [Method] setP1
|
|
# 34| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 34| 0: [Parameter] <set-?>
|
|
# 34| 0: [TypeAccess] int
|
|
# 34| 5: [BlockStmt] { ... }
|
|
# 34| 0: [ExprStmt] <Expr>;
|
|
# 34| 0: [AssignExpr] ...=...
|
|
# 34| 0: [VarAccess] this.p1
|
|
# 34| -1: [ThisAccess] this
|
|
# 34| 1: [VarAccess] <set-?>
|
|
# 36| 7: [Method] getP2
|
|
# 36| 3: [TypeAccess] int
|
|
# 36| 5: [BlockStmt] { ... }
|
|
# 36| 0: [ReturnStmt] return ...
|
|
# 36| 0: [IntegerLiteral] 1
|
|
# 37| 8: [Method] setP2
|
|
# 37| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 37| 0: [Parameter] value
|
|
# 37| 0: [TypeAccess] int
|
|
# 37| 5: [BlockStmt] { ... }
|
|
# 37| 0: [ReturnStmt] return ...
|
|
# 37| 0: [VarAccess] INSTANCE
|
|
# 40| 9: [ExtensionMethod] getP3
|
|
# 40| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 39| 0: [Parameter] <this>
|
|
# 39| 0: [TypeAccess] int
|
|
# 40| 5: [BlockStmt] { ... }
|
|
# 40| 0: [ReturnStmt] return ...
|
|
# 40| 0: [IntegerLiteral] 1
|
|
# 41| 10: [ExtensionMethod] setP3
|
|
# 41| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 39| 0: [Parameter] <this>
|
|
# 39| 0: [TypeAccess] int
|
|
# 41| 1: [Parameter] value
|
|
# 41| 0: [TypeAccess] int
|
|
# 41| 5: [BlockStmt] { ... }
|
|
# 41| 0: [ReturnStmt] return ...
|
|
# 41| 0: [VarAccess] INSTANCE
|
|
# 58| 3: [Class] Class1
|
|
# 58| 3: [Constructor] Class1
|
|
# 58| 5: [BlockStmt] { ... }
|
|
# 58| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 58| 1: [BlockStmt] { ... }
|
|
# 59| 4: [Method] fn
|
|
# 59| 3: [TypeAccess] Unit
|
|
# 59| 5: [BlockStmt] { ... }
|
|
# 60| 0: [ExprStmt] <Expr>;
|
|
# 60| 0: [MethodCall] println(...)
|
|
# 60| -1: [TypeAccess] ConsoleKt
|
|
# 60| 0: [MemberRefExpr] ...::...
|
|
# 60| -4: [AnonymousClass] new Function2<Generic<Integer>,Integer,String>(...) { ... }
|
|
# 60| 1: [Constructor]
|
|
# 60| 5: [BlockStmt] { ... }
|
|
# 60| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 60| 0: [IntegerLiteral] 2
|
|
# 60| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 60| 0: [Parameter] a0
|
|
# 60| 1: [Parameter] a1
|
|
# 60| 5: [BlockStmt] { ... }
|
|
# 60| 0: [ReturnStmt] return ...
|
|
# 60| 0: [MethodCall] m1(...)
|
|
# 60| -1: [VarAccess] a0
|
|
# 60| 0: [VarAccess] a1
|
|
# 60| -3: [TypeAccess] Function2<Generic<Integer>,Integer,String>
|
|
# 60| 0: [TypeAccess] Generic<Integer>
|
|
# 60| 0: [TypeAccess] Integer
|
|
# 60| 1: [TypeAccess] Integer
|
|
# 60| 2: [TypeAccess] String
|
|
# 61| 1: [ExprStmt] <Expr>;
|
|
# 61| 0: [MethodCall] println(...)
|
|
# 61| -1: [TypeAccess] ConsoleKt
|
|
# 61| 0: [MemberRefExpr] ...::...
|
|
# 61| -4: [AnonymousClass] new Function1<Integer,String>(...) { ... }
|
|
# 61| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 61| 0: [Parameter] <dispatchReceiver>
|
|
# 61| 5: [BlockStmt] { ... }
|
|
# 61| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 61| 0: [IntegerLiteral] 1
|
|
# 61| 1: [ExprStmt] <Expr>;
|
|
# 61| 0: [AssignExpr] ...=...
|
|
# 61| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 61| -1: [ThisAccess] this
|
|
# 61| 1: [VarAccess] <dispatchReceiver>
|
|
# 61| 2: [FieldDeclaration] Generic<Integer> <dispatchReceiver>;
|
|
# 61| -1: [TypeAccess] Generic<Integer>
|
|
# 61| 0: [TypeAccess] Integer
|
|
# 61| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 61| 0: [Parameter] a0
|
|
# 61| 5: [BlockStmt] { ... }
|
|
# 61| 0: [ReturnStmt] return ...
|
|
# 61| 0: [MethodCall] m1(...)
|
|
# 61| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 61| -1: [ThisAccess] this
|
|
# 61| 0: [VarAccess] a0
|
|
# 61| -3: [TypeAccess] Function1<Integer,String>
|
|
# 61| 0: [TypeAccess] Integer
|
|
# 61| 1: [TypeAccess] String
|
|
# 61| 0: [ClassInstanceExpr] new Generic<Integer>(...)
|
|
# 61| -3: [TypeAccess] Generic<Integer>
|
|
# 61| 0: [TypeAccess] Integer
|
|
# 62| 2: [ExprStmt] <Expr>;
|
|
# 62| 0: [MethodCall] println(...)
|
|
# 62| -1: [TypeAccess] ConsoleKt
|
|
# 62| 0: [MemberRefExpr] ...::...
|
|
# 62| -4: [AnonymousClass] new Function1<Generic<Integer>,String>(...) { ... }
|
|
# 62| 1: [Constructor]
|
|
# 62| 5: [BlockStmt] { ... }
|
|
# 62| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 62| 0: [IntegerLiteral] 1
|
|
# 62| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 62| 0: [Parameter] a0
|
|
# 62| 5: [BlockStmt] { ... }
|
|
# 62| 0: [ReturnStmt] return ...
|
|
# 62| 0: [MethodCall] ext1(...)
|
|
# 62| -2: [TypeAccess] Integer
|
|
# 62| -1: [TypeAccess] ReflectionKt
|
|
# 62| 0: [VarAccess] a0
|
|
# 62| -3: [TypeAccess] Function1<Generic<Integer>,String>
|
|
# 62| 0: [TypeAccess] Generic<Integer>
|
|
# 62| 0: [TypeAccess] Integer
|
|
# 62| 1: [TypeAccess] String
|
|
# 63| 3: [ExprStmt] <Expr>;
|
|
# 63| 0: [MethodCall] println(...)
|
|
# 63| -1: [TypeAccess] ConsoleKt
|
|
# 63| 0: [MemberRefExpr] ...::...
|
|
# 63| -4: [AnonymousClass] new Function0<String>(...) { ... }
|
|
# 63| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 63| 0: [Parameter] <extensionReceiver>
|
|
# 63| 5: [BlockStmt] { ... }
|
|
# 63| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 63| 0: [IntegerLiteral] 0
|
|
# 63| 1: [ExprStmt] <Expr>;
|
|
# 63| 0: [AssignExpr] ...=...
|
|
# 63| 0: [VarAccess] this.<extensionReceiver>
|
|
# 63| -1: [ThisAccess] this
|
|
# 63| 1: [VarAccess] <extensionReceiver>
|
|
# 63| 2: [FieldDeclaration] Generic<Integer> <extensionReceiver>;
|
|
# 63| -1: [TypeAccess] Generic<Integer>
|
|
# 63| 0: [TypeAccess] Integer
|
|
# 63| 3: [Method] invoke
|
|
# 63| 5: [BlockStmt] { ... }
|
|
# 63| 0: [ReturnStmt] return ...
|
|
# 63| 0: [MethodCall] ext1(...)
|
|
# 63| -2: [TypeAccess] Integer
|
|
# 63| -1: [TypeAccess] ReflectionKt
|
|
# 63| 0: [VarAccess] this.<extensionReceiver>
|
|
# 63| -1: [ThisAccess] this
|
|
# 63| -3: [TypeAccess] Function0<String>
|
|
# 63| 0: [TypeAccess] String
|
|
# 63| 0: [ClassInstanceExpr] new Generic<Integer>(...)
|
|
# 63| -3: [TypeAccess] Generic<Integer>
|
|
# 63| 0: [TypeAccess] Integer
|
|
# 64| 4: [ExprStmt] <Expr>;
|
|
# 64| 0: [MethodCall] println(...)
|
|
# 64| -1: [TypeAccess] ConsoleKt
|
|
# 64| 0: [MemberRefExpr] ...::...
|
|
# 64| -4: [AnonymousClass] new Function1<Generic<Integer>,String>(...) { ... }
|
|
# 64| 1: [Constructor]
|
|
# 64| 5: [BlockStmt] { ... }
|
|
# 64| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 64| 0: [IntegerLiteral] 1
|
|
# 64| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 64| 0: [Parameter] a0
|
|
# 64| 5: [BlockStmt] { ... }
|
|
# 64| 0: [ReturnStmt] return ...
|
|
# 64| 0: [MethodCall] ext2(...)
|
|
# 64| -1: [TypeAccess] ReflectionKt
|
|
# 64| 0: [VarAccess] a0
|
|
# 64| -3: [TypeAccess] Function1<Generic<Integer>,String>
|
|
# 64| 0: [TypeAccess] Generic<Integer>
|
|
# 64| 0: [TypeAccess] Integer
|
|
# 64| 1: [TypeAccess] String
|
|
# 65| 5: [ExprStmt] <Expr>;
|
|
# 65| 0: [MethodCall] println(...)
|
|
# 65| -1: [TypeAccess] ConsoleKt
|
|
# 65| 0: [MemberRefExpr] ...::...
|
|
# 65| -4: [AnonymousClass] new Function0<String>(...) { ... }
|
|
# 65| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 65| 0: [Parameter] <extensionReceiver>
|
|
# 65| 5: [BlockStmt] { ... }
|
|
# 65| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 65| 0: [IntegerLiteral] 0
|
|
# 65| 1: [ExprStmt] <Expr>;
|
|
# 65| 0: [AssignExpr] ...=...
|
|
# 65| 0: [VarAccess] this.<extensionReceiver>
|
|
# 65| -1: [ThisAccess] this
|
|
# 65| 1: [VarAccess] <extensionReceiver>
|
|
# 65| 2: [FieldDeclaration] Generic<Integer> <extensionReceiver>;
|
|
# 65| -1: [TypeAccess] Generic<Integer>
|
|
# 65| 0: [TypeAccess] Integer
|
|
# 65| 3: [Method] invoke
|
|
# 65| 5: [BlockStmt] { ... }
|
|
# 65| 0: [ReturnStmt] return ...
|
|
# 65| 0: [MethodCall] ext2(...)
|
|
# 65| -1: [TypeAccess] ReflectionKt
|
|
# 65| 0: [VarAccess] this.<extensionReceiver>
|
|
# 65| -1: [ThisAccess] this
|
|
# 65| -3: [TypeAccess] Function0<String>
|
|
# 65| 0: [TypeAccess] String
|
|
# 65| 0: [ClassInstanceExpr] new Generic<Integer>(...)
|
|
# 65| -3: [TypeAccess] Generic<Integer>
|
|
# 65| 0: [TypeAccess] Integer
|
|
# 67| 6: [ExprStmt] <Expr>;
|
|
# 67| 0: [MethodCall] println(...)
|
|
# 67| -1: [TypeAccess] ConsoleKt
|
|
# 67| 0: [PropertyRefExpr] ...::...
|
|
# 67| -4: [AnonymousClass] new KMutableProperty1<Generic<Integer>,Integer>(...) { ... }
|
|
# 67| 1: [Constructor]
|
|
# 67| 5: [BlockStmt] { ... }
|
|
# 67| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 67| 2: [Method] get
|
|
#-----| 4: (Parameters)
|
|
# 67| 0: [Parameter] a0
|
|
# 67| 5: [BlockStmt] { ... }
|
|
# 67| 0: [ReturnStmt] return ...
|
|
# 67| 0: [MethodCall] getP2(...)
|
|
# 67| -1: [VarAccess] a0
|
|
# 67| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 67| 0: [Parameter] a0
|
|
# 67| 5: [BlockStmt] { ... }
|
|
# 67| 0: [ReturnStmt] return ...
|
|
# 67| 0: [MethodCall] get(...)
|
|
# 67| -1: [ThisAccess] this
|
|
# 67| 0: [VarAccess] a0
|
|
# 67| 4: [Method] set
|
|
#-----| 4: (Parameters)
|
|
# 67| 0: [Parameter] a0
|
|
# 67| 1: [Parameter] a1
|
|
# 67| 5: [BlockStmt] { ... }
|
|
# 67| 0: [ReturnStmt] return ...
|
|
# 67| 0: [MethodCall] setP2(...)
|
|
# 67| -1: [VarAccess] a0
|
|
# 67| 0: [VarAccess] a1
|
|
# 67| -3: [TypeAccess] KMutableProperty1<Generic<Integer>,Integer>
|
|
# 67| 0: [TypeAccess] Generic<Integer>
|
|
# 67| 0: [TypeAccess] Integer
|
|
# 67| 1: [TypeAccess] Integer
|
|
# 68| 7: [ExprStmt] <Expr>;
|
|
# 68| 0: [MethodCall] println(...)
|
|
# 68| -1: [TypeAccess] ConsoleKt
|
|
# 68| 0: [PropertyRefExpr] ...::...
|
|
# 68| -4: [AnonymousClass] new KMutableProperty0<Integer>(...) { ... }
|
|
# 68| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 68| 0: [Parameter] <dispatchReceiver>
|
|
# 68| 5: [BlockStmt] { ... }
|
|
# 68| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 68| 1: [ExprStmt] <Expr>;
|
|
# 68| 0: [AssignExpr] ...=...
|
|
# 68| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 68| -1: [ThisAccess] this
|
|
# 68| 1: [VarAccess] <dispatchReceiver>
|
|
# 68| 2: [FieldDeclaration] Generic<Integer> <dispatchReceiver>;
|
|
# 68| -1: [TypeAccess] Generic<Integer>
|
|
# 68| 0: [TypeAccess] Integer
|
|
# 68| 3: [Method] get
|
|
# 68| 5: [BlockStmt] { ... }
|
|
# 68| 0: [ReturnStmt] return ...
|
|
# 68| 0: [MethodCall] getP2(...)
|
|
# 68| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 68| -1: [ThisAccess] this
|
|
# 68| 4: [Method] invoke
|
|
# 68| 5: [BlockStmt] { ... }
|
|
# 68| 0: [ReturnStmt] return ...
|
|
# 68| 0: [MethodCall] get(...)
|
|
# 68| -1: [ThisAccess] this
|
|
# 68| 5: [Method] set
|
|
#-----| 4: (Parameters)
|
|
# 68| 0: [Parameter] a0
|
|
# 68| 5: [BlockStmt] { ... }
|
|
# 68| 0: [ReturnStmt] return ...
|
|
# 68| 0: [MethodCall] setP2(...)
|
|
# 68| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 68| -1: [ThisAccess] this
|
|
# 68| 0: [VarAccess] a0
|
|
# 68| -3: [TypeAccess] KMutableProperty0<Integer>
|
|
# 68| 0: [TypeAccess] Integer
|
|
# 68| 0: [ClassInstanceExpr] new Generic<Integer>(...)
|
|
# 68| -3: [TypeAccess] Generic<Integer>
|
|
# 68| 0: [TypeAccess] Integer
|
|
# 70| 8: [ExprStmt] <Expr>;
|
|
# 70| 0: [MethodCall] println(...)
|
|
# 70| -1: [TypeAccess] ConsoleKt
|
|
# 70| 0: [PropertyRefExpr] ...::...
|
|
# 70| -4: [AnonymousClass] new KProperty0<Integer>(...) { ... }
|
|
# 70| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 70| 0: [Parameter] <dispatchReceiver>
|
|
# 70| 5: [BlockStmt] { ... }
|
|
# 70| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 70| 1: [ExprStmt] <Expr>;
|
|
# 70| 0: [AssignExpr] ...=...
|
|
# 70| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 70| -1: [ThisAccess] this
|
|
# 70| 1: [VarAccess] <dispatchReceiver>
|
|
# 70| 2: [FieldDeclaration] IntCompanionObject <dispatchReceiver>;
|
|
# 70| -1: [TypeAccess] IntCompanionObject
|
|
# 70| 3: [Method] get
|
|
# 70| 5: [BlockStmt] { ... }
|
|
# 70| 0: [ReturnStmt] return ...
|
|
# 70| 0: [MethodCall] getMAX_VALUE(...)
|
|
# 70| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 70| -1: [ThisAccess] this
|
|
# 70| 4: [Method] invoke
|
|
# 70| 5: [BlockStmt] { ... }
|
|
# 70| 0: [ReturnStmt] return ...
|
|
# 70| 0: [MethodCall] get(...)
|
|
# 70| -1: [ThisAccess] this
|
|
# 70| -3: [TypeAccess] KProperty0<Integer>
|
|
# 70| 0: [TypeAccess] Integer
|
|
# 70| 0: [VarAccess] Companion
|
|
# 71| 9: [ExprStmt] <Expr>;
|
|
# 71| 0: [MethodCall] println(...)
|
|
# 71| -1: [TypeAccess] ConsoleKt
|
|
# 71| 0: [PropertyRefExpr] ...::...
|
|
# 71| -4: [AnonymousClass] new KProperty0<Integer>(...) { ... }
|
|
# 71| 1: [Constructor]
|
|
# 71| 5: [BlockStmt] { ... }
|
|
# 71| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 71| 2: [Method] get
|
|
# 71| 5: [BlockStmt] { ... }
|
|
# 71| 0: [ReturnStmt] return ...
|
|
# 71| 0: [VarAccess] MAX_VALUE
|
|
# 71| 3: [Method] invoke
|
|
# 71| 5: [BlockStmt] { ... }
|
|
# 71| 0: [ReturnStmt] return ...
|
|
# 71| 0: [MethodCall] get(...)
|
|
# 71| -1: [ThisAccess] this
|
|
# 71| -3: [TypeAccess] KProperty0<Integer>
|
|
# 71| 0: [TypeAccess] Integer
|
|
# 72| 10: [ExprStmt] <Expr>;
|
|
# 72| 0: [MethodCall] println(...)
|
|
# 72| -1: [TypeAccess] ConsoleKt
|
|
# 72| 0: [PropertyRefExpr] ...::...
|
|
# 72| -4: [AnonymousClass] new KMutableProperty0<Integer>(...) { ... }
|
|
# 72| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 72| 0: [Parameter] <dispatchReceiver>
|
|
# 72| 5: [BlockStmt] { ... }
|
|
# 72| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 72| 1: [ExprStmt] <Expr>;
|
|
# 72| 0: [AssignExpr] ...=...
|
|
# 72| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 72| -1: [ThisAccess] this
|
|
# 72| 1: [VarAccess] <dispatchReceiver>
|
|
# 72| 2: [FieldDeclaration] Rectangle <dispatchReceiver>;
|
|
# 72| -1: [TypeAccess] Rectangle
|
|
# 72| 3: [Method] get
|
|
# 72| 5: [BlockStmt] { ... }
|
|
# 72| 0: [ReturnStmt] return ...
|
|
# 72| 0: [VarAccess] this.<dispatchReceiver>.height
|
|
# 72| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 72| -1: [ThisAccess] this
|
|
# 72| 4: [Method] invoke
|
|
# 72| 5: [BlockStmt] { ... }
|
|
# 72| 0: [ReturnStmt] return ...
|
|
# 72| 0: [MethodCall] get(...)
|
|
# 72| -1: [ThisAccess] this
|
|
# 72| 5: [Method] set
|
|
#-----| 4: (Parameters)
|
|
# 72| 0: [Parameter] a0
|
|
# 72| 5: [BlockStmt] { ... }
|
|
# 72| 0: [ExprStmt] <Expr>;
|
|
# 72| 0: [AssignExpr] ...=...
|
|
# 72| 0: [VarAccess] this.<dispatchReceiver>.height
|
|
# 72| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 72| -1: [ThisAccess] this
|
|
# 72| 1: [VarAccess] a0
|
|
# 72| -3: [TypeAccess] KMutableProperty0<Integer>
|
|
# 72| 0: [TypeAccess] Integer
|
|
# 72| 0: [ClassInstanceExpr] new Rectangle(...)
|
|
# 72| -3: [TypeAccess] Rectangle
|
|
# 75| 5: [Class,GenericType,ParameterizedType] Generic
|
|
#-----| -2: (Generic Parameters)
|
|
# 75| 0: [TypeVariable] T1
|
|
# 75| 1: [Constructor] Generic
|
|
# 75| 5: [BlockStmt] { ... }
|
|
# 75| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 75| 1: [BlockStmt] { ... }
|
|
# 76| 2: [Method] m1
|
|
# 76| 3: [TypeAccess] String
|
|
#-----| 4: (Parameters)
|
|
# 76| 0: [Parameter] i
|
|
# 76| 0: [TypeAccess] T1
|
|
# 76| 5: [BlockStmt] { ... }
|
|
# 76| 0: [ReturnStmt] return ...
|
|
# 76| 0: [MethodCall] toString(...)
|
|
# 76| -1: [ThisAccess] this
|
|
# 78| 3: [Method] getP2
|
|
# 78| 3: [TypeAccess] T1
|
|
# 78| 5: [BlockStmt] { ... }
|
|
# 78| 0: [ReturnStmt] return ...
|
|
# 78| 0: [NullLiteral] null
|
|
# 79| 4: [Method] setP2
|
|
# 79| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 79| 0: [Parameter] value
|
|
# 79| 0: [TypeAccess] T1
|
|
# 79| 5: [BlockStmt] { ... }
|
|
# 79| 0: [ReturnStmt] return ...
|
|
# 79| 0: [VarAccess] INSTANCE
|
|
# 83| 4: [Class,GenericType,ParameterizedType] Class2
|
|
#-----| -2: (Generic Parameters)
|
|
# 83| 0: [TypeVariable] T
|
|
# 83| 3: [Constructor] Class2
|
|
#-----| 4: (Parameters)
|
|
# 83| 0: [Parameter] value
|
|
# 83| 0: [TypeAccess] T
|
|
# 83| 5: [BlockStmt] { ... }
|
|
# 83| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 83| 1: [BlockStmt] { ... }
|
|
# 83| 0: [ExprStmt] <Expr>;
|
|
# 83| 0: [KtInitializerAssignExpr] ...=...
|
|
# 83| 0: [VarAccess] value
|
|
# 83| 4: [FieldDeclaration] T value;
|
|
# 83| -1: [TypeAccess] T
|
|
# 83| 0: [VarAccess] value
|
|
# 83| 5: [Method] getValue
|
|
# 83| 3: [TypeAccess] T
|
|
# 83| 5: [BlockStmt] { ... }
|
|
# 83| 0: [ReturnStmt] return ...
|
|
# 83| 0: [VarAccess] this.value
|
|
# 83| -1: [ThisAccess] this
|
|
# 85| 6: [Class,GenericType,ParameterizedType] Inner
|
|
#-----| -2: (Generic Parameters)
|
|
# 85| 0: [TypeVariable] T1
|
|
# 86| 1: [Constructor] Inner
|
|
#-----| 4: (Parameters)
|
|
# 86| 0: [Parameter] t
|
|
# 86| 0: [TypeAccess] T1
|
|
# 86| 5: [BlockStmt] { ... }
|
|
# 86| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 86| 1: [BlockStmt] { ... }
|
|
# 89| 8: [Method] test
|
|
# 89| 3: [TypeAccess] Unit
|
|
# 89| 5: [BlockStmt] { ... }
|
|
# 90| 0: [ExprStmt] <Expr>;
|
|
# 90| 0: [MethodCall] fn11(...)
|
|
# 90| -3: [TypeAccess] Inner<String>
|
|
# 90| 0: [TypeAccess] String
|
|
# 90| 1: [TypeAccess] T
|
|
# 90| -2: [TypeAccess] String
|
|
# 90| -1: [TypeAccess] ReflectionKt
|
|
# 90| 0: [StringLiteral] ""
|
|
# 90| 1: [MemberRefExpr] ...::...
|
|
# 90| -4: [AnonymousClass] new Function1<String,Inner<String>>(...) { ... }
|
|
# 90| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 90| 0: [Parameter] <dispatchReceiver>
|
|
# 90| 5: [BlockStmt] { ... }
|
|
# 90| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 90| 0: [IntegerLiteral] 1
|
|
# 90| 1: [ExprStmt] <Expr>;
|
|
# 90| 0: [AssignExpr] ...=...
|
|
# 90| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 90| -1: [ThisAccess] this
|
|
# 90| 1: [VarAccess] <dispatchReceiver>
|
|
# 90| 2: [FieldDeclaration] Class2 <dispatchReceiver>;
|
|
# 90| -1: [TypeAccess] Class2
|
|
# 90| 0: [TypeAccess] T
|
|
# 90| 3: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 90| 0: [Parameter] a0
|
|
# 90| 5: [BlockStmt] { ... }
|
|
# 90| 0: [ReturnStmt] return ...
|
|
# 90| 0: [ClassInstanceExpr] new Inner<String>(...)
|
|
# 90| -3: [TypeAccess] Inner<String>
|
|
# 90| 0: [TypeAccess] String
|
|
# 90| -2: [VarAccess] this.<dispatchReceiver>
|
|
# 90| -1: [ThisAccess] this
|
|
# 90| 0: [VarAccess] a0
|
|
# 90| -3: [TypeAccess] Function1<String,Inner<String>>
|
|
# 90| 0: [TypeAccess] String
|
|
# 90| 1: [TypeAccess] Inner<String>
|
|
# 90| 0: [TypeAccess] String
|
|
# 90| 0: [ThisAccess] this
|
|
# 105| 6: [Class] Base1
|
|
# 105| 1: [Constructor] Base1
|
|
#-----| 4: (Parameters)
|
|
# 105| 0: [Parameter] prop1
|
|
# 105| 0: [TypeAccess] int
|
|
# 105| 5: [BlockStmt] { ... }
|
|
# 105| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 105| 1: [BlockStmt] { ... }
|
|
# 105| 0: [ExprStmt] <Expr>;
|
|
# 105| 0: [KtInitializerAssignExpr] ...=...
|
|
# 105| 0: [VarAccess] prop1
|
|
# 105| 2: [Method] getProp1
|
|
# 105| 3: [TypeAccess] int
|
|
# 105| 5: [BlockStmt] { ... }
|
|
# 105| 0: [ReturnStmt] return ...
|
|
# 105| 0: [VarAccess] this.prop1
|
|
# 105| -1: [ThisAccess] this
|
|
# 105| 3: [FieldDeclaration] int prop1;
|
|
# 105| -1: [TypeAccess] int
|
|
# 105| 0: [VarAccess] prop1
|
|
# 105| 4: [Method] setProp1
|
|
# 105| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 105| 0: [Parameter] <set-?>
|
|
# 105| 0: [TypeAccess] int
|
|
# 105| 5: [BlockStmt] { ... }
|
|
# 105| 0: [ExprStmt] <Expr>;
|
|
# 105| 0: [AssignExpr] ...=...
|
|
# 105| 0: [VarAccess] this.prop1
|
|
# 105| -1: [ThisAccess] this
|
|
# 105| 1: [VarAccess] <set-?>
|
|
# 107| 7: [Class] Derived1
|
|
# 107| 1: [Constructor] Derived1
|
|
#-----| 4: (Parameters)
|
|
# 107| 0: [Parameter] prop1
|
|
# 107| 0: [TypeAccess] int
|
|
# 107| 5: [BlockStmt] { ... }
|
|
# 107| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 107| 0: [VarAccess] prop1
|
|
# 107| 1: [BlockStmt] { ... }
|
|
# 108| 2: [Method] fn
|
|
# 108| 3: [TypeAccess] Unit
|
|
# 108| 5: [BlockStmt] { ... }
|
|
# 109| 0: [ExprStmt] <Expr>;
|
|
# 109| 0: [MethodCall] println(...)
|
|
# 109| -1: [TypeAccess] ConsoleKt
|
|
# 109| 0: [PropertyRefExpr] ...::...
|
|
# 109| -4: [AnonymousClass] new KMutableProperty0<Integer>(...) { ... }
|
|
# 109| 1: [Constructor]
|
|
#-----| 4: (Parameters)
|
|
# 109| 0: [Parameter] <dispatchReceiver>
|
|
# 109| 5: [BlockStmt] { ... }
|
|
# 109| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 109| 1: [ExprStmt] <Expr>;
|
|
# 109| 0: [AssignExpr] ...=...
|
|
# 109| 0: [VarAccess] this.<dispatchReceiver>
|
|
# 109| -1: [ThisAccess] this
|
|
# 109| 1: [VarAccess] <dispatchReceiver>
|
|
# 109| 2: [FieldDeclaration] Derived1 <dispatchReceiver>;
|
|
# 109| -1: [TypeAccess] Derived1
|
|
# 109| 3: [Method] get
|
|
# 109| 5: [BlockStmt] { ... }
|
|
# 109| 0: [ReturnStmt] return ...
|
|
# 109| 0: [MethodCall] getProp1(...)
|
|
# 109| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 109| -1: [ThisAccess] this
|
|
# 109| 4: [Method] invoke
|
|
# 109| 5: [BlockStmt] { ... }
|
|
# 109| 0: [ReturnStmt] return ...
|
|
# 109| 0: [MethodCall] get(...)
|
|
# 109| -1: [ThisAccess] this
|
|
# 109| 5: [Method] set
|
|
#-----| 4: (Parameters)
|
|
# 109| 0: [Parameter] a0
|
|
# 109| 5: [BlockStmt] { ... }
|
|
# 109| 0: [ReturnStmt] return ...
|
|
# 109| 0: [MethodCall] setProp1(...)
|
|
# 109| -1: [VarAccess] this.<dispatchReceiver>
|
|
# 109| -1: [ThisAccess] this
|
|
# 109| 0: [VarAccess] a0
|
|
# 109| -3: [TypeAccess] KMutableProperty0<Integer>
|
|
# 109| 0: [TypeAccess] Integer
|
|
# 109| 0: [ThisAccess] this
|
|
# 113| 8: [Class] LocalFn
|
|
# 113| 1: [Constructor] LocalFn
|
|
# 113| 5: [BlockStmt] { ... }
|
|
# 113| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 113| 1: [BlockStmt] { ... }
|
|
# 114| 2: [Method] fn
|
|
# 114| 3: [TypeAccess] Unit
|
|
# 114| 5: [BlockStmt] { ... }
|
|
# 115| 0: [LocalTypeDeclStmt] class ...
|
|
# 115| 0: [LocalClass]
|
|
# 115| 1: [Constructor]
|
|
# 115| 5: [BlockStmt] { ... }
|
|
# 115| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 115| 2: [Method] fn1
|
|
# 115| 3: [TypeAccess] Unit
|
|
#-----| 4: (Parameters)
|
|
# 115| 0: [Parameter] i
|
|
# 115| 0: [TypeAccess] int
|
|
# 115| 5: [BlockStmt] { ... }
|
|
# 116| 1: [LocalVariableDeclStmt] var ...;
|
|
# 116| 1: [LocalVariableDeclExpr] x
|
|
# 116| 0: [MemberRefExpr] ...::...
|
|
# 116| -4: [AnonymousClass] new Function1<Integer,Unit>(...) { ... }
|
|
# 116| 1: [Constructor]
|
|
# 116| 5: [BlockStmt] { ... }
|
|
# 116| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 116| 0: [IntegerLiteral] 1
|
|
# 116| 2: [Method] invoke
|
|
#-----| 4: (Parameters)
|
|
# 116| 0: [Parameter] a0
|
|
# 116| 5: [BlockStmt] { ... }
|
|
# 116| 0: [ReturnStmt] return ...
|
|
# 116| 0: [MethodCall] fn1(...)
|
|
# 116| -1: [ClassInstanceExpr] new (...)
|
|
# 116| -3: [TypeAccess] Object
|
|
# 116| 0: [VarAccess] a0
|
|
# 116| -3: [TypeAccess] Function1<Integer,Unit>
|
|
# 116| 0: [TypeAccess] Integer
|
|
# 116| 1: [TypeAccess] Unit
|
|
# 139| 9: [Class] MemberOptionalsTest
|
|
# 139| 1: [Constructor] MemberOptionalsTest
|
|
# 139| 5: [BlockStmt] { ... }
|
|
# 139| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 139| 1: [BlockStmt] { ... }
|
|
# 140| 2: [Method] takesOptionalParam
|
|
# 140| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 140| 0: [Parameter] x
|
|
# 140| 0: [TypeAccess] int
|
|
# 140| 1: [Parameter] y
|
|
# 140| 0: [TypeAccess] int
|
|
# 140| 5: [BlockStmt] { ... }
|
|
# 140| 0: [ReturnStmt] return ...
|
|
# 140| 0: [AddExpr] ... + ...
|
|
# 140| 0: [VarAccess] x
|
|
# 140| 1: [VarAccess] y
|
|
# 140| 3: [Method] takesOptionalParam$default
|
|
# 140| 3: [TypeAccess] int
|
|
#-----| 4: (Parameters)
|
|
# 140| 0: [Parameter] p0
|
|
# 140| 0: [TypeAccess] MemberOptionalsTest
|
|
# 140| 1: [Parameter] p1
|
|
# 140| 0: [TypeAccess] int
|
|
# 140| 2: [Parameter] p2
|
|
# 140| 0: [TypeAccess] int
|
|
# 140| 3: [Parameter] p3
|
|
# 140| 0: [TypeAccess] int
|
|
# 140| 4: [Parameter] p4
|
|
# 140| 0: [TypeAccess] Object
|
|
# 140| 5: [BlockStmt] { ... }
|
|
# 140| 0: [IfStmt] if (...)
|
|
# 140| 0: [EQExpr] ... == ...
|
|
# 140| 0: [AndBitwiseExpr] ... & ...
|
|
# 140| 0: [IntegerLiteral] 2
|
|
# 140| 1: [VarAccess] p3
|
|
# 140| 1: [IntegerLiteral] 0
|
|
# 140| 1: [ExprStmt] <Expr>;
|
|
# 140| 0: [AssignExpr] ...=...
|
|
# 140| 0: [VarAccess] p2
|
|
# 140| 1: [IntegerLiteral] 0
|
|
# 140| 1: [ReturnStmt] return ...
|
|
# 140| 0: [MethodCall] takesOptionalParam(...)
|
|
# 140| -1: [VarAccess] p0
|
|
# 140| 0: [VarAccess] p1
|
|
# 140| 1: [VarAccess] p2
|
|
# 157| 10: [Class] ConstructorOptional
|
|
# 157| 1: [Constructor] ConstructorOptional
|
|
#-----| 4: (Parameters)
|
|
# 157| 0: [Parameter] x
|
|
# 157| 0: [TypeAccess] int
|
|
# 157| 1: [Parameter] y
|
|
# 157| 0: [TypeAccess] int
|
|
# 157| 5: [BlockStmt] { ... }
|
|
# 157| 0: [SuperConstructorInvocationStmt] super(...)
|
|
# 157| 1: [BlockStmt] { ... }
|
|
# 157| 2: [Constructor] ConstructorOptional
|
|
#-----| 4: (Parameters)
|
|
# 157| 0: [Parameter] p0
|
|
# 157| 0: [TypeAccess] int
|
|
# 157| 1: [Parameter] p1
|
|
# 157| 0: [TypeAccess] int
|
|
# 157| 2: [Parameter] p2
|
|
# 157| 0: [TypeAccess] int
|
|
# 157| 3: [Parameter] p3
|
|
# 157| 0: [TypeAccess] DefaultConstructorMarker
|
|
# 157| 5: [BlockStmt] { ... }
|
|
# 157| 0: [IfStmt] if (...)
|
|
# 157| 0: [EQExpr] ... == ...
|
|
# 157| 0: [AndBitwiseExpr] ... & ...
|
|
# 157| 0: [IntegerLiteral] 2
|
|
# 157| 1: [VarAccess] p2
|
|
# 157| 1: [IntegerLiteral] 0
|
|
# 157| 1: [ExprStmt] <Expr>;
|
|
# 157| 0: [AssignExpr] ...=...
|
|
# 157| 0: [VarAccess] p1
|
|
# 157| 1: [IntegerLiteral] 0
|
|
# 157| 1: [ThisConstructorInvocationStmt] this(...)
|
|
# 157| 0: [VarAccess] p0
|
|
# 157| 1: [VarAccess] p1
|