Files
codeql/csharp/ql/test/library-tests/attributes/PrintAst.expected

276 lines
11 KiB
Plaintext

attributes.cs:
# 10| [Attribute] [AssemblyTitle(...)]
# 10| -1: [TypeMention] AssemblyTitleAttribute
# 10| 0: [StringLiteral] "C# attributes test"
# 11| [Attribute] [AssemblyDescription(...)]
# 11| -1: [TypeMention] AssemblyDescriptionAttribute
# 11| 0: [StringLiteral] "A test of C# attributes"
# 12| [Attribute] [AssemblyConfiguration(...)]
# 12| -1: [TypeMention] AssemblyConfigurationAttribute
# 12| 0: [StringLiteral] ""
# 13| [Attribute] [AssemblyCompany(...)]
# 13| -1: [TypeMention] AssemblyCompanyAttribute
# 13| 0: [StringLiteral] "Semmle Plc"
# 14| [Attribute] [AssemblyProduct(...)]
# 14| -1: [TypeMention] AssemblyProductAttribute
# 14| 0: [StringLiteral] "Odasa"
# 15| [Attribute] [AssemblyCopyright(...)]
# 15| -1: [TypeMention] AssemblyCopyrightAttribute
# 15| 0: [StringLiteral] "Copyright © Semmle 2018"
# 16| [Attribute] [AssemblyTrademark(...)]
# 16| -1: [TypeMention] AssemblyTrademarkAttribute
# 16| 0: [StringLiteral] ""
# 17| [Attribute] [AssemblyCulture(...)]
# 17| -1: [TypeMention] AssemblyCultureAttribute
# 17| 0: [StringLiteral] ""
# 22| [Attribute] [ComVisible(...)]
# 22| -1: [TypeMention] ComVisibleAttribute
# 22| 0: [BoolLiteral] false
# 25| [Attribute] [Guid(...)]
# 25| -1: [TypeMention] GuidAttribute
# 25| 0: [StringLiteral] "2f70fdd6-14aa-4850-b053-d547adb1f476"
# 37| [Attribute] [AssemblyVersion(...)]
# 37| -1: [TypeMention] AssemblyVersionAttribute
# 37| 0: [StringLiteral] "1.0.0.0"
# 38| [Attribute] [AssemblyFileVersion(...)]
# 38| -1: [TypeMention] AssemblyFileVersionAttribute
# 38| 0: [StringLiteral] "1.0.0.0"
# 40| [Attribute] [Args(...)]
# 40| -1: [TypeMention] ArgsAttribute
# 40| 0: [IntLiteral] 0
# 40| 1: [ArrayCreation] array creation of type Object[]
# 40| -2: [TypeMention] Object[]
# 40| 1: [TypeMention] object
# 40| -1: [ArrayInitializer] { ..., ... }
# 40| 0: [CastExpr] (...) ...
# 40| 1: [IntLiteral] 1
# 40| 1: [CastExpr] (...) ...
# 40| 1: [IntLiteral] 2
# 40| 2: [NullLiteral] null
# 40| 2: [TypeofExpr] typeof(...)
# 40| 0: [TypeAccess] access to type ArgsAttribute
# 40| 0: [TypeMention] ArgsAttribute
# 40| 3: [CastExpr] (...) ...
# 40| 0: [TypeAccess] access to type E
# 40| 0: [TypeMention] E
# 40| 1: [IntLiteral] 12
# 40| 4: [NullLiteral] null
# 40| 5: [ArrayCreation] array creation of type Object[]
# 40| -2: [TypeMention] Object[]
# 40| 1: [TypeMention] object
# 40| -1: [ArrayInitializer] { ..., ... }
# 40| 0: [CastExpr] (...) ...
# 40| 1: [IntLiteral] 1
# 40| 1: [TypeofExpr] typeof(...)
# 40| 0: [TypeAccess] access to type Int32
# 40| 0: [TypeMention] int
# 41| [Attribute] [Args(...)]
# 41| -1: [TypeMention] ArgsAttribute
# 41| 0: [IntLiteral] 0
# 41| 1: [ArrayCreation] array creation of type Object[]
# 41| -2: [TypeMention] Object[]
# 41| 1: [TypeMention] object
# 41| -1: [ArrayInitializer] { ..., ... }
# 41| 0: [CastExpr] (...) ...
# 41| 1: [IntLiteral] 1
# 41| 1: [CastExpr] (...) ...
# 41| 1: [IntLiteral] 2
# 41| 2: [NullLiteral] null
# 41| 2: [TypeofExpr] typeof(...)
# 41| 0: [TypeAccess] access to type ArgsAttribute
# 41| 0: [TypeMention] ArgsAttribute
# 41| 3: [CastExpr] (...) ...
# 41| 0: [TypeAccess] access to type E
# 41| 0: [TypeMention] E
# 41| 1: [IntLiteral] 12
# 41| 4: [NullLiteral] null
# 41| 5: [ArrayCreation] array creation of type Object[]
# 41| -2: [TypeMention] Object[]
# 41| 1: [TypeMention] object
# 41| -1: [ArrayInitializer] { ..., ... }
# 41| 0: [CastExpr] (...) ...
# 41| 1: [IntLiteral] 1
# 41| 1: [TypeofExpr] typeof(...)
# 41| 0: [TypeAccess] access to type Int32
# 41| 0: [TypeMention] int
# 44| [Class] Foo
#-----| 0: (Attributes)
# 43| 1: [Attribute] [AttributeUsage(...)]
# 43| -1: [TypeMention] AttributeUsageAttribute
# 43| 0: [MemberConstantAccess] access to constant All
# 43| -1: [TypeAccess] access to type AttributeTargets
# 43| 0: [TypeMention] AttributeTargets
#-----| 3: (Base types)
# 44| 0: [TypeMention] Attribute
# 47| 5: [Method] foo
# 47| -1: [TypeMention] Void
#-----| 0: (Attributes)
# 46| 1: [Attribute] [Conditional(...)]
# 46| -1: [TypeMention] ConditionalAttribute
# 46| 0: [StringLiteral] "DEBUG2"
# 47| 4: [BlockStmt] {...}
# 50| [Class] Bar
# 52| 5: [Method] inc
# 52| -1: [TypeMention] int
#-----| 2: (Parameters)
# 52| 0: [Parameter] x
# 52| -1: [TypeMention] int
#-----| 0: (Attributes)
# 52| 1: [Attribute] [Foo(...)]
# 52| 0: [TypeMention] Foo
# 52| 4: [BlockStmt] {...}
# 52| 0: [ReturnStmt] return ...;
# 52| 0: [AddExpr] ... + ...
# 52| 0: [ParameterAccess] access to parameter x
# 52| 1: [IntLiteral] 1
# 55| 6: [Method] M1
# 55| -1: [TypeMention] Void
#-----| 0: (Attributes)
# 54| 1: [Attribute] [My(...)]
# 54| -1: [TypeMention] MyAttribute
# 54| 0: [BoolLiteral] false
# 55| 4: [BlockStmt] {...}
# 59| 7: [Method] M2
# 59| -1: [TypeMention] Void
#-----| 0: (Attributes)
# 57| 1: [Attribute] [My(...)]
# 57| -1: [TypeMention] MyAttribute
# 57| 0: [BoolLiteral] true
# 57| 1: [StringLiteral] ""
# 57| 2: [IntLiteral] 0
# 58| 2: [Attribute] [My2(...)]
# 58| -1: [TypeMention] My2Attribute
# 58| 0: [BoolLiteral] false
# 58| 1: [BoolLiteral] true
# 58| 3: [IntLiteral] 1
# 58| 4: [IntLiteral] 42
# 59| 4: [BlockStmt] {...}
# 62| [Class] MyAttribute
#-----| 3: (Base types)
# 62| 0: [TypeMention] Attribute
# 64| 4: [Field] x
# 64| -1: [TypeMention] int
# 65| 5: [Property] y
# 65| -1: [TypeMention] string
# 65| 3: [Getter] get_y
# 65| 4: [Setter] set_y
#-----| 2: (Parameters)
# 65| 0: [Parameter] value
# 66| 6: [InstanceConstructor] MyAttribute
#-----| 2: (Parameters)
# 66| 0: [Parameter] b
# 66| -1: [TypeMention] bool
# 66| 4: [BlockStmt] {...}
# 69| [Enum] E
# 69| 5: [Field] A
# 69| 1: [AssignExpr] ... = ...
# 69| 0: [MemberConstantAccess] access to constant A
# 69| 1: [IntLiteral] 42
# 71| [Class] ArgsAttribute
#-----| 3: (Base types)
# 71| 0: [TypeMention] Attribute
# 73| 4: [Property] Prop
# 73| -1: [TypeMention] Object[]
# 73| 1: [TypeMention] object
# 73| 3: [Getter] get_Prop
# 73| 4: [Setter] set_Prop
#-----| 2: (Parameters)
# 73| 0: [Parameter] value
# 74| 5: [InstanceConstructor] ArgsAttribute
#-----| 2: (Parameters)
# 74| 0: [Parameter] i
# 74| -1: [TypeMention] int
# 74| 1: [Parameter] o
# 74| -1: [TypeMention] object
# 74| 2: [Parameter] t
# 74| -1: [TypeMention] Type
# 74| 3: [Parameter] e
# 74| -1: [TypeMention] E
# 74| 4: [Parameter] arr
# 74| -1: [TypeMention] Int32[]
# 74| 1: [TypeMention] int
# 74| 4: [BlockStmt] {...}
# 78| [Class] X
#-----| 0: (Attributes)
# 77| 1: [Attribute] [Args(...)]
# 77| -1: [TypeMention] ArgsAttribute
# 77| 0: [IntLiteral] 42
# 77| 1: [NullLiteral] null
# 77| 2: [TypeofExpr] typeof(...)
# 77| 0: [TypeAccess] access to type X
# 77| 0: [TypeMention] X
# 77| 3: [MemberConstantAccess] access to constant A
# 77| -1: [TypeAccess] access to type E
# 77| 0: [TypeMention] E
# 77| 4: [ArrayCreation] array creation of type Int32[]
# 77| -2: [TypeMention] Int32[]
# 77| 1: [TypeMention] int
# 77| -1: [ArrayInitializer] { ..., ... }
# 77| 0: [IntLiteral] 1
# 77| 1: [IntLiteral] 2
# 77| 2: [IntLiteral] 3
# 77| 5: [ArrayCreation] array creation of type Object[]
# 77| -2: [TypeMention] Object[]
# 77| 1: [TypeMention] object
# 77| -1: [ArrayInitializer] { ..., ... }
# 77| 0: [CastExpr] (...) ...
# 77| 1: [IntLiteral] 1
# 77| 1: [TypeofExpr] typeof(...)
# 77| 0: [TypeAccess] access to type Int32
# 77| 0: [TypeMention] int
# 82| 5: [Method] SomeMethod
# 82| -1: [TypeMention] int
#-----| 0: (Attributes)
# 80| 1: [Attribute] [Args(...)]
# 80| -1: [TypeMention] ArgsAttribute
# 80| 0: [AddExpr] ... + ...
# 80| 0: [IntLiteral] 42
# 80| 1: [IntLiteral] 0
# 80| 1: [ArrayCreation] array creation of type Int32[]
# 80| -2: [TypeMention] Int32[]
# 80| 1: [TypeMention] int
# 80| -1: [ArrayInitializer] { ..., ... }
# 80| 0: [IntLiteral] 1
# 80| 1: [IntLiteral] 2
# 80| 2: [IntLiteral] 3
# 80| 2: [NullLiteral] null
# 80| 3: [CastExpr] (...) ...
# 80| 0: [TypeAccess] access to type E
# 80| 0: [TypeMention] E
# 80| 1: [IntLiteral] 12
# 80| 4: [NullLiteral] null
# 80| 5: [ArrayCreation] array creation of type Object[]
# 80| -2: [TypeMention] Object[]
# 80| 1: [TypeMention] object
# 80| -1: [ArrayInitializer] { ..., ... }
# 80| 0: [CastExpr] (...) ...
# 80| 1: [IntLiteral] 1
# 80| 1: [TypeofExpr] typeof(...)
# 80| 0: [TypeAccess] access to type Int32
# 80| 0: [TypeMention] int
# 82| 4: [BlockStmt] {...}
# 82| 0: [ReturnStmt] return ...;
# 82| 0: [IntLiteral] 1
# 85| [Class] My2Attribute
#-----| 3: (Base types)
# 85| 0: [TypeMention] Attribute
# 87| 4: [Property] X
# 87| -1: [TypeMention] int
# 87| 3: [Getter] get_X
# 87| 4: [Setter] set_X
#-----| 2: (Parameters)
# 87| 0: [Parameter] value
# 88| 5: [InstanceConstructor] My2Attribute
#-----| 2: (Parameters)
# 88| 0: [Parameter] a
# 88| -1: [TypeMention] bool
# 88| 1: [Parameter] b
# 88| -1: [TypeMention] bool
# 88| 2: [Parameter] i
# 88| -1: [TypeMention] int
# 88| 1: [IntLiteral] 12
# 88| 3: [Parameter] j
# 88| -1: [TypeMention] int
# 88| 1: [IntLiteral] 13
# 88| 4: [BlockStmt] {...}