arguments.cs: # 3| [Class] ArgumentsTest # 5| 4: [InstanceConstructor] ArgumentsTest #-----| 2: (Parameters) # 5| 0: [Parameter] x # 5| -1: [TypeMention] int # 5| 1: [IntLiteral] 0 # 5| 1: [Parameter] y # 5| -1: [TypeMention] int # 5| 1: [IntLiteral] 0 # 6| 4: [BlockStmt] {...} # 9| 5: [InstanceConstructor] ArgumentsTest #-----| 2: (Parameters) # 9| 0: [Parameter] x # 9| -1: [TypeMention] int # 9| 1: [Parameter] y # 9| -1: [TypeMention] int # 9| 2: [Parameter] z # 9| -1: [TypeMention] int # 10| 4: [BlockStmt] {...} # 11| 0: [ExprStmt] ...; # 11| 0: [AssignExpr] ... = ... # 11| 0: [ParameterAccess] access to parameter y # 11| 1: [ParameterAccess] access to parameter x # 14| 6: [Method] f1 # 14| -1: [TypeMention] Void #-----| 2: (Parameters) # 14| 0: [Parameter] x # 14| -1: [TypeMention] int # 14| 1: [IntLiteral] 1 # 14| 1: [Parameter] y # 14| -1: [TypeMention] int # 14| 1: [IntLiteral] 2 # 15| 4: [BlockStmt] {...} # 18| 7: [Method] f2 # 18| -1: [TypeMention] Void #-----| 2: (Parameters) # 18| 0: [Parameter] x # 18| -1: [TypeMention] int # 18| 1: [Parameter] y # 18| -1: [TypeMention] int # 18| 2: [Parameter] z # 18| -1: [TypeMention] int # 19| 4: [BlockStmt] {...} # 20| 0: [ExprStmt] ...; # 20| 0: [AssignExpr] ... = ... # 20| 0: [ParameterAccess] access to parameter y # 20| 1: [ParameterAccess] access to parameter x # 23| 8: [Method] f # 23| -1: [TypeMention] Void # 24| 4: [BlockStmt] {...} # 25| 0: [LocalVariableDeclStmt] ... ...; # 25| 0: [LocalVariableDeclAndInitExpr] Int32 x = ... # 25| -1: [TypeMention] int # 25| 0: [LocalVariableAccess] access to local variable x # 25| 1: [IntLiteral] 1 # 27| 1: [ExprStmt] ...; # 27| 0: [MethodCall] call to method f1 # 27| 0: [IntLiteral] 2 # 28| 2: [ExprStmt] ...; # 28| 0: [MethodCall] call to method f2 # 28| 0: [LocalVariableAccess] access to local variable x # 28| 1: [LocalVariableAccess] access to local variable x # 28| 2: [LocalVariableAccess] access to local variable x # 29| 3: [ExprStmt] ...; # 29| 0: [ObjectCreation] object creation of type ArgumentsTest # 29| -1: [TypeMention] ArgumentsTest # 29| 0: [LocalVariableAccess] access to local variable x # 29| 1: [LocalVariableAccess] access to local variable x # 29| 2: [LocalVariableAccess] access to local variable x # 30| 4: [ExprStmt] ...; # 30| 0: [ObjectCreation] object creation of type ArgumentsTest # 30| -1: [TypeMention] ArgumentsTest # 30| 0: [IntLiteral] 10 # 30| 1: [IntLiteral] 5 # 33| 9: [Method] f3 # 33| -1: [TypeMention] Void #-----| 2: (Parameters) # 33| 0: [Parameter] o # 33| -1: [TypeMention] int # 33| 1: [Parameter] args # 33| -1: [TypeMention] Int32[] # 33| 1: [TypeMention] int # 34| 4: [BlockStmt] {...} # 35| 0: [ExprStmt] ...; # 35| 0: [MethodCall] call to method f3 # 35| 0: [IntLiteral] 0 # 35| 1: [IntLiteral] 1 # 35| 2: [IntLiteral] 2 # 36| 1: [ExprStmt] ...; # 36| 0: [MethodCall] call to method f3 # 36| 0: [IntLiteral] 0 # 36| 1: [ArrayCreation] array creation of type Int32[] # 36| -2: [TypeMention] Int32[] # 36| 1: [TypeMention] int # 36| -1: [ArrayInitializer] { ..., ... } # 36| 0: [IntLiteral] 1 # 36| 1: [IntLiteral] 2 # 37| 2: [ExprStmt] ...; # 37| 0: [MethodCall] call to method f3 # 37| 0: [IntLiteral] 1 # 37| 1: [IntLiteral] 0 # 38| 3: [ExprStmt] ...; # 38| 0: [MethodCall] call to method f3 # 38| 0: [IntLiteral] 0 # 38| 1: [ParameterAccess] access to parameter args # 39| 4: [ExprStmt] ...; # 39| 0: [MethodCall] call to method f3 # 39| 0: [ParameterAccess] access to parameter args # 39| 1: [IntLiteral] 0 # 40| 5: [ExprStmt] ...; # 40| 0: [MethodCall] call to method f3 # 40| 0: [ArrayCreation] array creation of type Int32[] # 40| -2: [TypeMention] Int32[] # 40| 1: [TypeMention] int # 40| -1: [ArrayInitializer] { ..., ... } # 40| 0: [IntLiteral] 1 # 40| 1: [IntLiteral] 2 # 40| 1: [IntLiteral] 0 # 43| 10: [Method] f4 # 43| -1: [TypeMention] Void #-----| 2: (Parameters) # 43| 0: [Parameter] args # 43| -1: [TypeMention] Object[] # 43| 1: [TypeMention] object # 44| 4: [BlockStmt] {...} # 45| 0: [ExprStmt] ...; # 45| 0: [MethodCall] call to method f4 # 45| 0: [ArrayCreation] array creation of type Object[] # 45| -2: [TypeMention] Object[] # 45| 1: [TypeMention] object # 45| -1: [ArrayInitializer] { ..., ... } # 45| 0: [NullLiteral] null # 45| 1: [NullLiteral] null # 48| 11: [Property] Prop # 48| -1: [TypeMention] int # 48| 3: [Getter] get_Prop # 48| 4: [Setter] set_Prop #-----| 2: (Parameters) # 48| 0: [Parameter] value # 50| 12: [Indexer] Item # 50| -1: [TypeMention] int #-----| 1: (Parameters) # 50| 0: [Parameter] a # 50| -1: [TypeMention] int # 50| 1: [Parameter] b # 50| -1: [TypeMention] int # 50| 3: [Getter] get_Item #-----| 2: (Parameters) # 50| 0: [Parameter] a # 50| 1: [Parameter] b # 50| 4: [AddExpr] ... + ... # 50| 0: [ParameterAccess] access to parameter a # 50| 1: [ParameterAccess] access to parameter b # 50| 4: [Setter] set_Item #-----| 2: (Parameters) # 50| 0: [Parameter] a # 50| 1: [Parameter] b # 50| 2: [Parameter] value # 50| 4: [BlockStmt] {...} # 52| 13: [Method] f5 # 52| -1: [TypeMention] Void # 53| 4: [BlockStmt] {...} # 54| 0: [ExprStmt] ...; # 54| 0: [AssignExpr] ... = ... # 54| 0: [PropertyCall] access to property Prop # 54| 1: [IntLiteral] 0 # 55| 1: [ExprStmt] ...; # 55| 0: [AssignExpr] ... = ... # 55| 0: [PropertyCall] access to property Prop # 55| 1: [IndexerCall] access to indexer # 55| -1: [ThisAccess] this access # 55| 0: [IntLiteral] 1 # 55| 1: [IntLiteral] 2 # 56| 2: [ExprStmt] ...; # 56| 0: [AssignExpr] ... = ... # 56| 0: [TupleExpr] (..., ...) # 56| 0: [PropertyCall] access to property Prop # 56| 1: [IndexerCall] access to indexer # 56| -1: [ThisAccess] this access # 56| 0: [IntLiteral] 3 # 56| 1: [IntLiteral] 4 # 56| 1: [TupleExpr] (..., ...) # 56| 0: [IntLiteral] 5 # 56| 1: [IntLiteral] 6 # 57| 3: [ExprStmt] ...; # 57| 0: [PostIncrExpr] ...++ # 57| 0: [PropertyCall] access to property Prop # 58| 4: [ExprStmt] ...; # 58| 0: [AssignAddExpr] ... += ... # 58| 0: [PropertyCall] access to property Prop # 58| 1: [IntLiteral] 7 # 59| 5: [ExprStmt] ...; # 59| 0: [PostIncrExpr] ...++ # 59| 0: [IndexerCall] access to indexer # 59| -1: [ThisAccess] this access # 59| 0: [IntLiteral] 8 # 59| 1: [IntLiteral] 9 # 60| 6: [ExprStmt] ...; # 60| 0: [AssignAddExpr] ... += ... # 60| 0: [IndexerCall] access to indexer # 60| -1: [ThisAccess] this access # 60| 0: [IntLiteral] 10 # 60| 1: [IntLiteral] 11 # 60| 1: [IntLiteral] 12 # 61| 7: [LocalVariableDeclStmt] ... ...; # 61| 0: [LocalVariableDeclAndInitExpr] (Int32,Int32) tuple = ... # 61| -1: [TypeMention] (int, int) # 61| 0: [LocalVariableAccess] access to local variable tuple # 61| 1: [TupleExpr] (..., ...) # 61| 0: [IntLiteral] 13 # 61| 1: [IntLiteral] 14 # 62| 8: [ExprStmt] ...; # 62| 0: [AssignExpr] ... = ... # 62| 0: [TupleExpr] (..., ...) # 62| 0: [PropertyCall] access to property Prop # 62| 1: [IndexerCall] access to indexer # 62| -1: [ThisAccess] this access # 62| 0: [IntLiteral] 15 # 62| 1: [IntLiteral] 16 # 62| 1: [LocalVariableAccess] access to local variable tuple # 66| 14: [Method] f6 # 66| -1: [TypeMention] Void #-----| 0: (Attributes) # 65| 1: [Attribute] [My(...)] # 65| -1: [TypeMention] MyAttribute # 65| 0: [BoolLiteral] false # 66| 4: [BlockStmt] {...} # 69| 15: [Method] f7 # 69| -1: [TypeMention] Void #-----| 0: (Attributes) # 68| 1: [Attribute] [My(...)] # 68| -1: [TypeMention] MyAttribute # 68| 0: [BoolLiteral] true # 68| 1: [StringLiteral] "" # 68| 2: [IntLiteral] 0 # 69| 4: [BlockStmt] {...} # 72| [Class] MyAttribute #-----| 3: (Base types) # 72| 0: [TypeMention] Attribute # 74| 4: [Field] x # 74| -1: [TypeMention] int # 75| 5: [Property] y # 75| -1: [TypeMention] string # 75| 3: [Getter] get_y # 75| 4: [Setter] set_y #-----| 2: (Parameters) # 75| 0: [Parameter] value # 76| 6: [InstanceConstructor] MyAttribute #-----| 2: (Parameters) # 76| 0: [Parameter] b # 76| -1: [TypeMention] bool # 76| 4: [BlockStmt] {...}