Files
codeql/csharp/ql/test/library-tests/extension/PrintAst.expected
2026-05-13 09:24:46 +02:00

512 lines
23 KiB
Plaintext

extensionTypes.cs:
# 4| [Class] MyExtensionTypes
# 6| 4: [ExtensionType] extension(String)
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
#-----| 0: (Attributes)
# 6| 1: [DefaultAttribute] [NotNull(...)]
# 6| 0: [TypeMention] NotNullAttribute
# 8| 4: [ExtensionMethod] M11
# 8| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 8| 4: [BlockStmt] {...}
# 10| 5: [ExtensionType] extension(Int32)
#-----| 2: (Parameters)
# 10| 0: [Parameter] i1
# 10| -1: [TypeMention] int
# 12| 4: [ExtensionMethod] M21
# 12| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 10| 0: [Parameter] i1
# 10| -1: [TypeMention] int
# 12| 4: [BlockStmt] {...}
# 14| 6: [ExtensionType] extension(Int32)
#-----| 2: (Parameters)
# 14| 0: [Parameter] i2
# 14| -1: [TypeMention] int
# 16| 4: [ExtensionMethod] M31
# 16| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 14| 0: [Parameter] i2
# 14| -1: [TypeMention] int
# 16| 4: [BlockStmt] {...}
# 18| 7: [ExtensionType] extension(Int32)
#-----| 2: (Parameters)
# 18| 0: [Parameter] i3
# 18| -1: [TypeMention] int
# 20| 4: [ExtensionMethod] M41
# 20| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 18| 0: [Parameter] i3
# 18| -1: [TypeMention] int
# 20| 4: [BlockStmt] {...}
# 22| 8: [ExtensionType] extension(String)
#-----| 2: (Parameters)
# 22| 0: [Parameter] s
# 22| -1: [TypeMention] string
# 24| 4: [ExtensionMethod] M51
# 24| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 22| 0: [Parameter] s
# 22| -1: [TypeMention] string
# 24| 4: [BlockStmt] {...}
# 26| 9: [ExtensionType] extension(T1)`1
#-----| 1: (Type parameters)
# 26| 0: [TypeParameter] T1
#-----| 2: (Parameters)
# 26| 0: [Parameter] t1
# 26| -1: [TypeMention] T1
#-----| 0: (Attributes)
# 26| 1: [DefaultAttribute] [NotNullWhen(...)]
# 26| -1: [TypeMention] NotNullWhenAttribute
# 26| 0: [BoolLiteral] true
# 28| 4: [ExtensionMethod] M61`1
# 28| -1: [TypeMention] Void
#-----| 1: (Type parameters)
# 28| 0: [TypeParameter] T2
#-----| 2: (Parameters)
# 26| 0: [Parameter] t1
# 26| -1: [TypeMention] T1
# 28| 1: [Parameter] o
# 28| -1: [TypeMention] object
# 28| 2: [Parameter] t2
# 28| -1: [TypeMention] T2
# 28| 4: [BlockStmt] {...}
extensions.cs:
# 4| [Class] MyExtensions
# 6| 4: [ExtensionType] extension(String)
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 8| 4: [Property] Prop1
# 8| -1: [TypeMention] bool
# 8| 3: [ExtensionCallable,Getter] get_Prop1
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 8| 4: [GTExpr] ... > ...
# 8| 0: [PropertyCall] access to property Length
# 8| -1: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s
# 8| 1: [IntLiteral] 0
# 9| 5: [Property] Prop2
# 9| -1: [TypeMention] bool
# 9| 3: [ExtensionCallable,Getter] get_Prop2
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 9| 4: [BlockStmt] {...}
# 9| 0: [ReturnStmt] return ...;
# 9| 0: [BoolLiteral] true
# 9| 4: [ExtensionCallable,Setter] set_Prop2
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 9| 1: [Parameter] value
# 9| 4: [BlockStmt] {...}
# 10| 6: [Property] StaticProp1
# 10| -1: [TypeMention] bool
# 10| 3: [ExtensionCallable,Getter] get_StaticProp1
# 10| 4: [BlockStmt] {...}
# 10| 0: [ReturnStmt] return ...;
# 10| 0: [BoolLiteral] false
# 11| 7: [ExtensionMethod] M1
# 11| -1: [TypeMention] bool
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 11| 4: [IsExpr] ... is ...
# 11| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s
# 11| 1: [NotPatternExpr] not ...
# 11| 0: [ConstantPatternExpr,NullLiteral] null
# 12| 8: [ExtensionMethod] M2
# 12| -1: [TypeMention] string
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 12| 1: [Parameter] other
# 12| -1: [TypeMention] string
# 12| 4: [BlockStmt] {...}
# 12| 0: [ReturnStmt] return ...;
# 12| 0: [AddExpr] ... + ...
# 12| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter s
# 12| 1: [ParameterAccess] access to parameter other
# 13| 9: [ExtensionMethod] StaticM1
# 13| -1: [TypeMention] int
# 13| 4: [BlockStmt] {...}
# 13| 0: [ReturnStmt] return ...;
# 13| 0: [IntLiteral] 0
# 14| 10: [ExtensionMethod] StaticM2
# 14| -1: [TypeMention] int
#-----| 2: (Parameters)
# 14| 0: [Parameter] x
# 14| -1: [TypeMention] string
# 14| 4: [BlockStmt] {...}
# 14| 0: [ReturnStmt] return ...;
# 14| 0: [PropertyCall] access to property Length
# 14| -1: [ParameterAccess] access to parameter x
# 15| 11: [ExtensionCallable,MulOperator] *
# 15| -1: [TypeMention] string
#-----| 2: (Parameters)
# 15| 0: [Parameter] a
# 15| -1: [TypeMention] int
# 15| 1: [Parameter] b
# 15| -1: [TypeMention] string
# 15| 4: [BlockStmt] {...}
# 15| 0: [ReturnStmt] return ...;
# 15| 0: [StringLiteralUtf16] ""
# 16| 14: [ExtensionMethod] StringGenericM1`1
# 16| -1: [TypeMention] T
#-----| 1: (Type parameters)
# 16| 0: [TypeParameter] T
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 16| 1: [Parameter] t
# 16| -1: [TypeMention] T
# 16| 2: [Parameter] o
# 16| -1: [TypeMention] object
# 16| 4: [BlockStmt] {...}
# 16| 0: [ReturnStmt] return ...;
# 16| 0: [ParameterAccess] access to parameter t
# 17| 15: [ExtensionCallable,IncrementOperator] ++
# 17| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 6| 0: [Parameter] s
# 6| -1: [TypeMention] string
# 17| 4: [BlockStmt] {...}
# 18| 16: [DecrementOperator,ExtensionCallable] --
# 18| -1: [TypeMention] string
#-----| 2: (Parameters)
# 18| 0: [Parameter] o
# 18| -1: [TypeMention] string
# 18| 4: [BlockStmt] {...}
# 18| 0: [ReturnStmt] return ...;
# 18| 0: [ParameterAccess] access to parameter o
# 21| 5: [ExtensionType] extension(Object)
# 23| 4: [ExtensionMethod] StaticObjectM1
# 23| -1: [TypeMention] int
# 23| 4: [BlockStmt] {...}
# 23| 0: [ReturnStmt] return ...;
# 23| 0: [IntLiteral] 0
# 24| 5: [ExtensionMethod] StaticObjectM2
# 24| -1: [TypeMention] int
#-----| 2: (Parameters)
# 24| 0: [Parameter] s
# 24| -1: [TypeMention] string
# 24| 4: [BlockStmt] {...}
# 24| 0: [ReturnStmt] return ...;
# 24| 0: [PropertyCall] access to property Length
# 24| -1: [ParameterAccess] access to parameter s
# 25| 6: [Property] StaticProp
# 25| -1: [TypeMention] bool
# 25| 3: [ExtensionCallable,Getter] get_StaticProp
# 25| 4: [BoolLiteral] true
# 28| 8: [ExtensionType] extension(T)`1
#-----| 1: (Type parameters)
# 28| 0: [TypeParameter] T
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 30| 4: [Property] GenericProp1
# 30| -1: [TypeMention] bool
# 30| 3: [ExtensionCallable,Getter] get_GenericProp1
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 30| 4: [IsExpr] ... is ...
# 30| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter t
# 30| 1: [NotPatternExpr] not ...
# 30| 0: [ConstantPatternExpr,NullLiteral] null
# 31| 5: [Property] GenericProp2
# 31| -1: [TypeMention] bool
# 31| 3: [ExtensionCallable,Getter] get_GenericProp2
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 31| 4: [BlockStmt] {...}
# 31| 0: [ReturnStmt] return ...;
# 31| 0: [BoolLiteral] true
# 31| 4: [ExtensionCallable,Setter] set_GenericProp2
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 31| 1: [Parameter] value
# 31| 4: [BlockStmt] {...}
# 32| 6: [ExtensionMethod] GenericM1
# 32| -1: [TypeMention] bool
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 32| 4: [IsExpr] ... is ...
# 32| 0: [SyntheticExtensionParameterAccess] access to extension synthetic parameter t
# 32| 1: [NotPatternExpr] not ...
# 32| 0: [ConstantPatternExpr,NullLiteral] null
# 33| 7: [ExtensionMethod] GenericM2`1
# 33| -1: [TypeMention] Void
#-----| 1: (Type parameters)
# 33| 0: [TypeParameter] S
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 33| 1: [Parameter] other
# 33| -1: [TypeMention] S
# 33| 4: [BlockStmt] {...}
# 34| 8: [ExtensionMethod] GenericStaticM1
# 34| -1: [TypeMention] Void
#-----| 2: (Parameters)
# 28| 0: [Parameter] t
# 28| -1: [TypeMention] T
# 34| 4: [BlockStmt] {...}
# 35| 9: [ExtensionMethod] GenericStaticM2`1
# 35| -1: [TypeMention] Void
#-----| 1: (Type parameters)
# 35| 0: [TypeParameter] S
#-----| 2: (Parameters)
# 35| 0: [Parameter] other
# 35| -1: [TypeMention] S
# 35| 4: [BlockStmt] {...}
# 36| 10: [AddOperator,ExtensionCallable] +
# 36| -1: [TypeMention] T
#-----| 2: (Parameters)
# 36| 0: [Parameter] a
# 36| -1: [TypeMention] T
# 36| 1: [Parameter] b
# 36| -1: [TypeMention] T
# 36| 4: [BlockStmt] {...}
# 36| 0: [ReturnStmt] return ...;
# 36| 0: [NullLiteral] null
# 40| [Class] ClassicExtensions
# 42| 4: [ExtensionMethod] M3
# 42| -1: [TypeMention] bool
#-----| 2: (Parameters)
# 42| 0: [Parameter] s
# 42| -1: [TypeMention] string
# 42| 4: [IsExpr] ... is ...
# 42| 0: [ParameterAccess] access to parameter s
# 42| 1: [NotPatternExpr] not ...
# 42| 0: [ConstantPatternExpr,NullLiteral] null
# 45| [Class] C
# 47| 6: [Method] CallingExtensions
# 47| -1: [TypeMention] Void
# 48| 4: [BlockStmt] {...}
# 49| 0: [LocalVariableDeclStmt] ... ...;
# 49| 0: [LocalVariableDeclAndInitExpr] String s = ...
# 49| -1: [TypeMention] string
# 49| 0: [LocalVariableAccess] access to local variable s
# 49| 1: [StringLiteralUtf16] "Hello World."
# 52| 1: [LocalVariableDeclStmt] ... ...;
# 52| 0: [LocalVariableDeclAndInitExpr] Boolean x11 = ...
# 52| -1: [TypeMention] bool
# 52| 0: [LocalVariableAccess] access to local variable x11
# 52| 1: [ExtensionPropertyCall] access to property Prop1
# 52| -1: [LocalVariableAccess] access to local variable s
# 53| 2: [LocalVariableDeclStmt] ... ...;
# 53| 0: [LocalVariableDeclAndInitExpr] Boolean x12 = ...
# 53| -1: [TypeMention] bool
# 53| 0: [LocalVariableAccess] access to local variable x12
# 53| 1: [ExtensionPropertyCall] access to property Prop2
# 53| -1: [LocalVariableAccess] access to local variable s
# 54| 3: [ExprStmt] ...;
# 54| 0: [AssignExpr] ... = ...
# 54| 0: [ExtensionPropertyCall] access to property Prop2
# 54| -1: [LocalVariableAccess] access to local variable s
# 54| 1: [BoolLiteral] true
# 55| 4: [LocalVariableDeclStmt] ... ...;
# 55| 0: [LocalVariableDeclAndInitExpr] Boolean x13 = ...
# 55| -1: [TypeMention] bool
# 55| 0: [LocalVariableAccess] access to local variable x13
# 55| 1: [ExtensionPropertyCall] access to property StaticProp1
# 55| -1: [TypeAccess] access to type String
# 55| 0: [TypeMention] string
# 56| 5: [LocalVariableDeclStmt] ... ...;
# 56| 0: [LocalVariableDeclAndInitExpr] Boolean x14 = ...
# 56| -1: [TypeMention] bool
# 56| 0: [LocalVariableAccess] access to local variable x14
# 56| 1: [ExtensionPropertyCall] access to property StaticProp
# 56| -1: [TypeAccess] access to type Object
# 56| 0: [TypeMention] object
# 59| 6: [LocalVariableDeclStmt] ... ...;
# 59| 0: [LocalVariableDeclAndInitExpr] Boolean x21 = ...
# 59| -1: [TypeMention] bool
# 59| 0: [LocalVariableAccess] access to local variable x21
# 59| 1: [MethodCall] call to method M1
# 59| -1: [LocalVariableAccess] access to local variable s
# 60| 7: [LocalVariableDeclStmt] ... ...;
# 60| 0: [LocalVariableDeclAndInitExpr] String x22 = ...
# 60| -1: [TypeMention] string
# 60| 0: [LocalVariableAccess] access to local variable x22
# 60| 1: [MethodCall] call to method M2
# 60| -1: [LocalVariableAccess] access to local variable s
# 60| 0: [StringLiteralUtf16] "!!!"
# 61| 8: [LocalVariableDeclStmt] ... ...;
# 61| 0: [LocalVariableDeclAndInitExpr] Int32 x23 = ...
# 61| -1: [TypeMention] int
# 61| 0: [LocalVariableAccess] access to local variable x23
# 61| 1: [MethodCall] call to method StaticM1
# 61| -1: [TypeAccess] access to type String
# 61| 0: [TypeMention] string
# 62| 9: [LocalVariableDeclStmt] ... ...;
# 62| 0: [LocalVariableDeclAndInitExpr] Int32 x24 = ...
# 62| -1: [TypeMention] int
# 62| 0: [LocalVariableAccess] access to local variable x24
# 62| 1: [MethodCall] call to method StaticM2
# 62| -1: [TypeAccess] access to type String
# 62| 0: [TypeMention] string
# 62| 0: [LocalVariableAccess] access to local variable s
# 63| 10: [LocalVariableDeclStmt] ... ...;
# 63| 0: [LocalVariableDeclAndInitExpr] Int32 x25 = ...
# 63| -1: [TypeMention] int
# 63| 0: [LocalVariableAccess] access to local variable x25
# 63| 1: [MethodCall] call to method StaticObjectM1
# 63| -1: [TypeAccess] access to type Object
# 63| 0: [TypeMention] object
# 64| 11: [LocalVariableDeclStmt] ... ...;
# 64| 0: [LocalVariableDeclAndInitExpr] Int32 x26 = ...
# 64| -1: [TypeMention] int
# 64| 0: [LocalVariableAccess] access to local variable x26
# 64| 1: [MethodCall] call to method StaticObjectM2
# 64| -1: [TypeAccess] access to type Object
# 64| 0: [TypeMention] object
# 64| 0: [LocalVariableAccess] access to local variable s
# 67| 12: [LocalVariableDeclStmt] ... ...;
# 67| 0: [LocalVariableDeclAndInitExpr] String x30 = ...
# 67| -1: [TypeMention] string
# 67| 0: [LocalVariableAccess] access to local variable x30
# 67| 1: [ExtensionOperatorCall] call to operator *
# 67| 0: [IntLiteral] 3
# 67| 1: [LocalVariableAccess] access to local variable s
# 68| 13: [ExprStmt] ...;
# 68| 0: [ExtensionOperatorCall] call to operator ++
# 68| 0: [LocalVariableAccess] access to local variable s
# 69| 14: [ExprStmt] ...;
# 69| 0: [ExtensionOperatorCall] call to operator --
# 69| 0: [LocalVariableAccess] access to local variable s
# 72| 15: [LocalVariableDeclStmt] ... ...;
# 72| 0: [LocalVariableDeclAndInitExpr] Boolean y = ...
# 72| -1: [TypeMention] bool
# 72| 0: [LocalVariableAccess] access to local variable y
# 72| 1: [MethodCall] call to method M3
# 72| -1: [LocalVariableAccess] access to local variable s
# 75| 16: [ExprStmt] ...;
# 75| 0: [MethodCall] call to method M1
# 75| -1: [TypeAccess] access to type MyExtensions
# 75| 0: [TypeMention] MyExtensions
# 75| 0: [LocalVariableAccess] access to local variable s
# 76| 17: [ExprStmt] ...;
# 76| 0: [MethodCall] call to method M2
# 76| -1: [TypeAccess] access to type MyExtensions
# 76| 0: [TypeMention] MyExtensions
# 76| 0: [LocalVariableAccess] access to local variable s
# 76| 1: [StringLiteralUtf16] "!!!"
# 77| 18: [ExprStmt] ...;
# 77| 0: [MethodCall] call to method StaticM1
# 77| -1: [TypeAccess] access to type MyExtensions
# 77| 0: [TypeMention] MyExtensions
# 78| 19: [ExprStmt] ...;
# 78| 0: [MethodCall] call to method StaticM2
# 78| -1: [TypeAccess] access to type MyExtensions
# 78| 0: [TypeMention] MyExtensions
# 78| 0: [LocalVariableAccess] access to local variable s
# 79| 20: [ExprStmt] ...;
# 79| 0: [MethodCall] call to method StaticObjectM1
# 79| -1: [TypeAccess] access to type MyExtensions
# 79| 0: [TypeMention] MyExtensions
# 80| 21: [ExprStmt] ...;
# 80| 0: [MethodCall] call to method StaticObjectM2
# 80| -1: [TypeAccess] access to type MyExtensions
# 80| 0: [TypeMention] MyExtensions
# 80| 0: [LocalVariableAccess] access to local variable s
# 83| 22: [ExprStmt] ...;
# 83| 0: [ExtensionOperatorCall] call to operator *
# 83| -1: [TypeAccess] access to type MyExtensions
# 83| 0: [TypeMention] MyExtensions
# 83| 0: [IntLiteral] 3
# 83| 1: [LocalVariableAccess] access to local variable s
# 84| 23: [ExprStmt] ...;
# 84| 0: [ExtensionOperatorCall] call to operator ++
# 84| -1: [TypeAccess] access to type MyExtensions
# 84| 0: [TypeMention] MyExtensions
# 84| 0: [LocalVariableAccess] access to local variable s
# 85| 24: [ExprStmt] ...;
# 85| 0: [ExtensionOperatorCall] call to operator --
# 85| -1: [TypeAccess] access to type MyExtensions
# 85| 0: [TypeMention] MyExtensions
# 85| 0: [LocalVariableAccess] access to local variable s
# 88| 25: [ExprStmt] ...;
# 88| 0: [MethodCall] call to extension accessor get_Prop1
# 88| -1: [TypeAccess] access to type MyExtensions
# 88| 0: [TypeMention] MyExtensions
# 88| 0: [LocalVariableAccess] access to local variable s
# 89| 26: [ExprStmt] ...;
# 89| 0: [MethodCall] call to extension accessor get_Prop2
# 89| -1: [TypeAccess] access to type MyExtensions
# 89| 0: [TypeMention] MyExtensions
# 89| 0: [LocalVariableAccess] access to local variable s
# 90| 27: [ExprStmt] ...;
# 90| 0: [MethodCall] call to extension accessor set_Prop2
# 90| -1: [TypeAccess] access to type MyExtensions
# 90| 0: [TypeMention] MyExtensions
# 90| 0: [LocalVariableAccess] access to local variable s
# 90| 1: [BoolLiteral] false
# 91| 28: [ExprStmt] ...;
# 91| 0: [MethodCall] call to extension accessor get_StaticProp
# 91| -1: [TypeAccess] access to type MyExtensions
# 91| 0: [TypeMention] MyExtensions
# 94| 7: [Method] CallingGenericExtensions
# 94| -1: [TypeMention] Void
# 95| 4: [BlockStmt] {...}
# 96| 0: [LocalVariableDeclStmt] ... ...;
# 96| 0: [LocalVariableDeclAndInitExpr] String s = ...
# 96| -1: [TypeMention] string
# 96| 0: [LocalVariableAccess] access to local variable s
# 96| 1: [StringLiteralUtf16] "Hello Generic World."
# 97| 1: [LocalVariableDeclStmt] ... ...;
# 97| 0: [LocalVariableDeclAndInitExpr] Object o = ...
# 97| -1: [TypeMention] object
# 97| 0: [LocalVariableAccess] access to local variable o
# 97| 1: [ObjectCreation] object creation of type Object
# 97| 0: [TypeMention] object
# 100| 2: [ExprStmt] ...;
# 100| 0: [MethodCall] call to method GenericM1
# 100| -1: [LocalVariableAccess] access to local variable o
# 101| 3: [ExprStmt] ...;
# 101| 0: [MethodCall] call to method GenericM1
# 101| -1: [LocalVariableAccess] access to local variable s
# 104| 4: [ExprStmt] ...;
# 104| 0: [MethodCall] call to method GenericM1
# 104| -1: [TypeAccess] access to type MyExtensions
# 104| 0: [TypeMention] MyExtensions
# 104| 0: [LocalVariableAccess] access to local variable o
# 105| 5: [ExprStmt] ...;
# 105| 0: [MethodCall] call to method GenericM1
# 105| -1: [TypeAccess] access to type MyExtensions
# 105| 0: [TypeMention] MyExtensions
# 105| 0: [LocalVariableAccess] access to local variable s
# 107| 6: [ExprStmt] ...;
# 107| 0: [MethodCall] call to method GenericM2<Int32>
# 107| -1: [LocalVariableAccess] access to local variable o
# 107| 0: [IntLiteral] 42
# 108| 7: [ExprStmt] ...;
# 108| 0: [MethodCall] call to method GenericM2<Int32>
# 108| -1: [TypeAccess] access to type MyExtensions
# 108| 0: [TypeMention] MyExtensions
# 108| 0: [LocalVariableAccess] access to local variable o
# 108| 1: [IntLiteral] 42
# 110| 8: [ExprStmt] ...;
# 110| 0: [MethodCall] call to method StringGenericM1<Int32>
# 110| -1: [LocalVariableAccess] access to local variable s
# 110| 0: [IntLiteral] 7
# 110| 1: [ObjectCreation] object creation of type Object
# 110| 0: [TypeMention] object
# 111| 9: [ExprStmt] ...;
# 111| 0: [MethodCall] call to method StringGenericM1<String>
# 111| -1: [TypeAccess] access to type MyExtensions
# 111| 0: [TypeMention] MyExtensions
# 111| 0: [LocalVariableAccess] access to local variable s
# 111| 1: [StringLiteralUtf16] "test"
# 111| 2: [ObjectCreation] object creation of type Object
# 111| 0: [TypeMention] object