mirror of
https://github.com/github/codeql.git
synced 2025-12-24 04:36:35 +01:00
1676 lines
84 KiB
Plaintext
1676 lines
84 KiB
Plaintext
#-----| [ModuleDecl] __ObjC
|
|
#-----| [ModuleDecl] declarations
|
|
#-----| [ModuleDecl] expressions
|
|
#-----| [ModuleDecl] patterns
|
|
#-----| [ModuleDecl] statements
|
|
declarations.swift:
|
|
# 1| [StructDecl] Foo
|
|
# 2| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 2| getInit(0): [IntegerLiteralExpr] 11
|
|
# 2| getPattern(0): [NamedPattern] x
|
|
# 2| getMember(1): [ConcreteVarDecl] x
|
|
# 2| getAccessorDecl(0): [AccessorDecl] get
|
|
# 2| getSelfParam(): [ParamDecl] self
|
|
# 2| getBody(): [BraceStmt] { ... }
|
|
# 2| getAccessorDecl(1): [AccessorDecl] set
|
|
# 2| getSelfParam(): [ParamDecl] self
|
|
# 2| getParam(0): [ParamDecl] value
|
|
# 2| getBody(): [BraceStmt] { ... }
|
|
# 2| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 2| getSelfParam(): [ParamDecl] self
|
|
# 2| getBody(): [BraceStmt] { ... }
|
|
# 2| getElement(0): [YieldStmt] yield ...
|
|
# 3| getMember(2): [PatternBindingDecl] var ... = ...
|
|
# 3| getPattern(0): [TypedPattern] ... as ...
|
|
# 3| getSubPattern(): [NamedPattern] next
|
|
# 3| getTypeRepr(): [TypeRepr] Int
|
|
# 3| getMember(3): [ConcreteVarDecl] next
|
|
# 4| getAccessorDecl(0): [AccessorDecl] get
|
|
# 4| getSelfParam(): [ParamDecl] self
|
|
# 4| getBody(): [BraceStmt] { ... }
|
|
# 4| getElement(0): [ReturnStmt] return ...
|
|
# 4| getResult(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 4| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 4| getBase(): [TypeExpr] Int.Type
|
|
# 4| getTypeRepr(): [TypeRepr] Int
|
|
# 4| getArgument(0): [Argument] : .x
|
|
# 4| getExpr(): [MemberRefExpr] .x
|
|
# 4| getBase(): [DeclRefExpr] self
|
|
# 4| getArgument(1): [Argument] : 1
|
|
# 4| getExpr(): [IntegerLiteralExpr] 1
|
|
# 5| getAccessorDecl(1): [AccessorDecl] set
|
|
# 5| getSelfParam(): [ParamDecl] self
|
|
# 5| getParam(0): [ParamDecl] newValue
|
|
# 5| getBody(): [BraceStmt] { ... }
|
|
# 5| getElement(0): [AssignExpr] ... = ...
|
|
# 5| getDest(): [MemberRefExpr] .x
|
|
# 5| getBase(): [DeclRefExpr] self
|
|
# 5| getSource(): [BinaryExpr] ... .-(_:_:) ...
|
|
# 5| getFunction(): [MethodRefExpr] .-(_:_:)
|
|
# 5| getBase(): [TypeExpr] Int.Type
|
|
# 5| getTypeRepr(): [TypeRepr] Int
|
|
# 5| getArgument(0): [Argument] : newValue
|
|
# 5| getExpr(): [DeclRefExpr] newValue
|
|
# 5| getArgument(1): [Argument] : 1
|
|
# 5| getExpr(): [IntegerLiteralExpr] 1
|
|
# 3| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 3| getSelfParam(): [ParamDecl] self
|
|
# 3| getBody(): [BraceStmt] { ... }
|
|
# 3| getElement(0): [YieldStmt] yield ...
|
|
# 1| getMember(4): [ConstructorDecl] init()
|
|
# 1| getSelfParam(): [ParamDecl] self
|
|
# 1| getBody(): [BraceStmt] { ... }
|
|
# 1| getElement(0): [ReturnStmt] return
|
|
# 1| getMember(5): [ConstructorDecl] init(x:)
|
|
# 1| getSelfParam(): [ParamDecl] self
|
|
# 1| getParam(0): [ParamDecl] x
|
|
# 9| [ClassDecl] Bar
|
|
# 9| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 9| getInit(0): [FloatLiteralExpr] 1.3
|
|
# 9| getPattern(0): [TypedPattern] ... as ...
|
|
# 9| getSubPattern(): [NamedPattern] x
|
|
# 9| getTypeRepr(): [TypeRepr] Double
|
|
# 9| getMember(1): [ConcreteVarDecl] x
|
|
# 9| getAccessorDecl(0): [AccessorDecl] get
|
|
# 9| getSelfParam(): [ParamDecl] self
|
|
# 9| getBody(): [BraceStmt] { ... }
|
|
# 9| getAccessorDecl(1): [AccessorDecl] set
|
|
# 9| getSelfParam(): [ParamDecl] self
|
|
# 9| getParam(0): [ParamDecl] value
|
|
# 9| getBody(): [BraceStmt] { ... }
|
|
# 9| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 9| getSelfParam(): [ParamDecl] self
|
|
# 9| getBody(): [BraceStmt] { ... }
|
|
# 9| getElement(0): [YieldStmt] yield ...
|
|
# 9| getMember(2): [DestructorDecl] deinit()
|
|
# 9| getSelfParam(): [ParamDecl] self
|
|
# 9| getBody(): [BraceStmt] { ... }
|
|
# 9| getMember(3): [ConstructorDecl] init()
|
|
# 9| getSelfParam(): [ParamDecl] self
|
|
# 9| getBody(): [BraceStmt] { ... }
|
|
# 9| getElement(0): [ReturnStmt] return
|
|
# 11| [EnumDecl] EnumValues
|
|
# 12| getMember(0): [EnumCaseDecl] case ...
|
|
# 12| getMember(1): [EnumElementDecl] value1
|
|
# 12| getMember(2): [EnumElementDecl] value2
|
|
# 13| getMember(3): [EnumCaseDecl] case ...
|
|
# 13| getMember(4): [EnumElementDecl] value3
|
|
# 13| getMember(5): [EnumElementDecl] value4
|
|
# 13| getMember(6): [EnumElementDecl] value5
|
|
# 16| [EnumDecl] EnumWithParams
|
|
# 17| getMember(0): [EnumCaseDecl] case ...
|
|
# 17| getMember(1): [EnumElementDecl] nodata1
|
|
# 17| getParam(0): [ParamDecl] _
|
|
# 18| getMember(2): [EnumCaseDecl] case ...
|
|
# 18| getMember(3): [EnumElementDecl] intdata
|
|
# 18| getParam(0): [ParamDecl] _
|
|
# 19| getMember(4): [EnumCaseDecl] case ...
|
|
# 19| getMember(5): [EnumElementDecl] tuple
|
|
# 19| getParam(0): [ParamDecl] _
|
|
# 19| getParam(1): [ParamDecl] _
|
|
# 19| getParam(2): [ParamDecl] _
|
|
# 22| [ProtocolDecl] MyProtocol
|
|
# 23| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 23| getPattern(0): [TypedPattern] ... as ...
|
|
# 23| getSubPattern(): [NamedPattern] mustBeSettable
|
|
# 23| getTypeRepr(): [TypeRepr] Int
|
|
# 23| getMember(1): [ConcreteVarDecl] mustBeSettable
|
|
# 23| getAccessorDecl(0): [AccessorDecl] get
|
|
# 23| getSelfParam(): [ParamDecl] self
|
|
# 23| getAccessorDecl(1): [AccessorDecl] set
|
|
# 23| getSelfParam(): [ParamDecl] self
|
|
# 23| getParam(0): [ParamDecl] newValue
|
|
# 23| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 23| getSelfParam(): [ParamDecl] self
|
|
# 24| getMember(2): [PatternBindingDecl] var ... = ...
|
|
# 24| getPattern(0): [TypedPattern] ... as ...
|
|
# 24| getSubPattern(): [NamedPattern] doesNotNeedToBeSettable
|
|
# 24| getTypeRepr(): [TypeRepr] Int
|
|
# 24| getMember(3): [ConcreteVarDecl] doesNotNeedToBeSettable
|
|
# 24| getAccessorDecl(0): [AccessorDecl] get
|
|
# 24| getSelfParam(): [ParamDecl] self
|
|
# 25| getMember(4): [ConcreteFuncDecl] random()
|
|
# 25| getSelfParam(): [ParamDecl] self
|
|
# 28| [ConcreteFuncDecl] a_function(a_parameter:)
|
|
# 28| getParam(0): [ParamDecl] a_parameter
|
|
# 28| getBody(): [BraceStmt] { ... }
|
|
# 30| [TopLevelCodeDecl] { ... }
|
|
# 30| getBody(): [BraceStmt] { ... }
|
|
# 30| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 30| getInit(0): [IntegerLiteralExpr] 42
|
|
# 30| getPattern(0): [NamedPattern] a_variable
|
|
# 30| [ConcreteVarDecl] a_variable
|
|
# 31| [TopLevelCodeDecl] { ... }
|
|
# 31| getBody(): [BraceStmt] { ... }
|
|
# 31| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 31| getPattern(0): [TypedPattern] ... as ...
|
|
# 31| getSubPattern(): [NamedPattern] a_property
|
|
# 31| getTypeRepr(): [TypeRepr] String
|
|
# 31| [ConcreteVarDecl] a_property
|
|
# 32| getAccessorDecl(0): [AccessorDecl] get
|
|
# 32| getBody(): [BraceStmt] { ... }
|
|
# 33| getElement(0): [ReturnStmt] return ...
|
|
# 33| getResult(): [StringLiteralExpr] here
|
|
# 35| getAccessorDecl(1): [AccessorDecl] set
|
|
# 35| getParam(0): [ParamDecl] newValue
|
|
# 35| getBody(): [BraceStmt] { ... }
|
|
# 38| [TopLevelCodeDecl] { ... }
|
|
# 38| getBody(): [BraceStmt] { ... }
|
|
# 38| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 38| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 38| getArgument(0): [Argument] : [...]
|
|
# 38| getExpr(): [VarargExpansionExpr] [...]
|
|
# 38| getSubExpr(): [ArrayExpr] [...]
|
|
# 38| getElement(0): [StringLiteralExpr] some top level statement
|
|
# 38| getArgument(1): [Argument] separator: default separator
|
|
# 38| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 38| getArgument(2): [Argument] terminator: default terminator
|
|
# 38| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 40| [ClassDecl] Baz
|
|
# 41| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 41| getPattern(0): [TypedPattern] ... as ...
|
|
# 41| getSubPattern(): [NamedPattern] field
|
|
# 41| getTypeRepr(): [TypeRepr] Int
|
|
# 41| getMember(1): [ConcreteVarDecl] field
|
|
# 41| getAccessorDecl(0): [AccessorDecl] get
|
|
# 41| getSelfParam(): [ParamDecl] self
|
|
# 41| getBody(): [BraceStmt] { ... }
|
|
# 41| getAccessorDecl(1): [AccessorDecl] set
|
|
# 41| getSelfParam(): [ParamDecl] self
|
|
# 41| getParam(0): [ParamDecl] value
|
|
# 41| getBody(): [BraceStmt] { ... }
|
|
# 41| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 41| getSelfParam(): [ParamDecl] self
|
|
# 41| getBody(): [BraceStmt] { ... }
|
|
# 41| getElement(0): [YieldStmt] yield ...
|
|
# 42| getMember(2): [ConstructorDecl] init()
|
|
# 42| getSelfParam(): [ParamDecl] self
|
|
# 42| getBody(): [BraceStmt] { ... }
|
|
# 43| getElement(0): [AssignExpr] ... = ...
|
|
# 43| getDest(): [MemberRefExpr] .field
|
|
# 43| getBase(): [DeclRefExpr] self
|
|
# 43| getSource(): [IntegerLiteralExpr] 10
|
|
# 44| getElement(1): [ReturnStmt] return
|
|
# 46| getMember(3): [DestructorDecl] deinit()
|
|
# 46| getSelfParam(): [ParamDecl] self
|
|
# 46| getBody(): [BraceStmt] { ... }
|
|
# 47| getElement(0): [AssignExpr] ... = ...
|
|
# 47| getDest(): [MemberRefExpr] .field
|
|
# 47| getBase(): [DeclRefExpr] self
|
|
# 47| getSource(): [IntegerLiteralExpr] 0
|
|
# 50| getMember(4): [ConcreteFuncDecl] +-(_:)
|
|
# 50| getSelfParam(): [ParamDecl] self
|
|
# 50| getParam(0): [ParamDecl] other
|
|
# 50| getBody(): [BraceStmt] { ... }
|
|
# 51| getElement(0): [ReturnStmt] return ...
|
|
# 51| getResult(): [DeclRefExpr] other
|
|
# 55| [PrefixOperatorDecl] +-
|
|
# 57| [PrecedenceGroupDecl] precedencegroup ...
|
|
# 64| [InfixOperatorDecl] +++
|
|
# 66| [InfixOperatorDecl] ***
|
|
# 68| [StructDecl] ZeroWrapper
|
|
# 69| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 69| getPattern(0): [TypedPattern] ... as ...
|
|
# 69| getSubPattern(): [NamedPattern] wrappedValue
|
|
# 69| getTypeRepr(): [TypeRepr] Int
|
|
# 69| getMember(1): [ConcreteVarDecl] wrappedValue
|
|
# 70| getAccessorDecl(0): [AccessorDecl] get
|
|
# 70| getSelfParam(): [ParamDecl] self
|
|
# 70| getBody(): [BraceStmt] { ... }
|
|
# 71| getElement(0): [ReturnStmt] return ...
|
|
# 71| getResult(): [IntegerLiteralExpr] 0
|
|
# 68| getMember(2): [ConstructorDecl] init()
|
|
# 68| getSelfParam(): [ParamDecl] self
|
|
# 68| getBody(): [BraceStmt] { ... }
|
|
# 68| getElement(0): [ReturnStmt] return
|
|
# 76| [ConcreteFuncDecl] foo()
|
|
# 76| getBody(): [BraceStmt] { ... }
|
|
# 77| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 77| getPattern(0): [TypedPattern] ... as ...
|
|
# 77| getSubPattern(): [NamedPattern] x
|
|
# 77| getTypeRepr(): [TypeRepr] Int
|
|
# 77| getElement(1): [ConcreteVarDecl] x
|
|
# 77| getAccessorDecl(0): [AccessorDecl] get
|
|
# 77| getBody(): [BraceStmt] { ... }
|
|
# 78| getElement(2): [ReturnStmt] return ...
|
|
# 78| getResult(): [DeclRefExpr] x
|
|
# 77| [CallExpr] call to init()
|
|
# 77| getFunction(): [ConstructorRefCallExpr] call to init()
|
|
# 77| getFunction(): [DeclRefExpr] init()
|
|
# 77| getArgument(0): [Argument] : ZeroWrapper.Type
|
|
# 77| getExpr(): [TypeExpr] ZeroWrapper.Type
|
|
# 77| getTypeRepr(): [TypeRepr] ZeroWrapper
|
|
# 77| [TypedPattern] ... as ...
|
|
# 77| getSubPattern(): [NamedPattern] _x
|
|
# 77| [ConcreteVarDecl] _x
|
|
# 81| [StructDecl] HasPropertyAndObserver
|
|
# 82| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 82| getPattern(0): [TypedPattern] ... as ...
|
|
# 82| getSubPattern(): [NamedPattern] settableField
|
|
# 82| getTypeRepr(): [TypeRepr] Int
|
|
# 82| getMember(1): [ConcreteVarDecl] settableField
|
|
# 83| getAccessorDecl(0): [AccessorDecl] set
|
|
# 83| getSelfParam(): [ParamDecl] self
|
|
# 83| getParam(0): [ParamDecl] newValue
|
|
# 83| getBody(): [BraceStmt] { ... }
|
|
# 84| getAccessorDecl(1): [AccessorDecl] get
|
|
# 84| getSelfParam(): [ParamDecl] self
|
|
# 84| getBody(): [BraceStmt] { ... }
|
|
# 85| getElement(0): [ReturnStmt] return ...
|
|
# 85| getResult(): [IntegerLiteralExpr] 0
|
|
# 82| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 82| getSelfParam(): [ParamDecl] self
|
|
# 82| getBody(): [BraceStmt] { ... }
|
|
# 82| getElement(0): [YieldStmt] yield ...
|
|
# 91| getMember(2): [PatternBindingDecl] var ... = ...
|
|
# 91| getPattern(0): [TypedPattern] ... as ...
|
|
# 91| getSubPattern(): [NamedPattern] readOnlyField1
|
|
# 91| getTypeRepr(): [TypeRepr] Int
|
|
# 91| getMember(3): [ConcreteVarDecl] readOnlyField1
|
|
# 91| getAccessorDecl(0): [AccessorDecl] get
|
|
# 91| getSelfParam(): [ParamDecl] self
|
|
# 91| getBody(): [BraceStmt] { ... }
|
|
# 92| getElement(0): [ReturnStmt] return ...
|
|
# 92| getResult(): [IntegerLiteralExpr] 0
|
|
# 96| getMember(4): [PatternBindingDecl] var ... = ...
|
|
# 96| getPattern(0): [TypedPattern] ... as ...
|
|
# 96| getSubPattern(): [NamedPattern] readOnlyField2
|
|
# 96| getTypeRepr(): [TypeRepr] Int
|
|
# 96| getMember(5): [ConcreteVarDecl] readOnlyField2
|
|
# 97| getAccessorDecl(0): [AccessorDecl] get
|
|
# 97| getSelfParam(): [ParamDecl] self
|
|
# 97| getBody(): [BraceStmt] { ... }
|
|
# 98| getElement(0): [ReturnStmt] return ...
|
|
# 98| getResult(): [IntegerLiteralExpr] 0
|
|
# 102| getMember(6): [PatternBindingDecl] var ... = ...
|
|
# 102| getPattern(0): [TypedPattern] ... as ...
|
|
# 102| getSubPattern(): [NamedPattern] normalField
|
|
# 102| getTypeRepr(): [TypeRepr] Int
|
|
# 102| getMember(7): [ConcreteVarDecl] normalField
|
|
# 102| getAccessorDecl(0): [AccessorDecl] get
|
|
# 102| getSelfParam(): [ParamDecl] self
|
|
# 102| getBody(): [BraceStmt] { ... }
|
|
# 102| getAccessorDecl(1): [AccessorDecl] set
|
|
# 102| getSelfParam(): [ParamDecl] self
|
|
# 102| getParam(0): [ParamDecl] value
|
|
# 102| getBody(): [BraceStmt] { ... }
|
|
# 102| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 102| getSelfParam(): [ParamDecl] self
|
|
# 102| getBody(): [BraceStmt] { ... }
|
|
# 102| getElement(0): [YieldStmt] yield ...
|
|
# 104| getMember(8): [SubscriptDecl] subscript ...
|
|
# 105| getAccessorDecl(0): [AccessorDecl] get
|
|
# 105| getSelfParam(): [ParamDecl] self
|
|
# 104| getParam(0): [ParamDecl] x
|
|
# 105| getBody(): [BraceStmt] { ... }
|
|
# 106| getElement(0): [ReturnStmt] return ...
|
|
# 106| getResult(): [IntegerLiteralExpr] 0
|
|
# 108| getAccessorDecl(1): [AccessorDecl] set
|
|
# 108| getSelfParam(): [ParamDecl] self
|
|
# 108| getParam(0): [ParamDecl] newValue
|
|
# 104| getParam(1): [ParamDecl] x
|
|
# 108| getBody(): [BraceStmt] { ... }
|
|
# 104| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 104| getSelfParam(): [ParamDecl] self
|
|
# 104| getBody(): [BraceStmt] { ... }
|
|
# 104| getElement(0): [YieldStmt] yield ...
|
|
# 104| getParam(0): [ParamDecl] x
|
|
# 111| getMember(9): [SubscriptDecl] subscript ...
|
|
# 111| getAccessorDecl(0): [AccessorDecl] get
|
|
# 111| getSelfParam(): [ParamDecl] self
|
|
# 111| getParam(0): [ParamDecl] x
|
|
# 111| getParam(1): [ParamDecl] y
|
|
# 111| getBody(): [BraceStmt] { ... }
|
|
# 112| getElement(0): [ReturnStmt] return ...
|
|
# 112| getResult(): [IntegerLiteralExpr] 0
|
|
# 111| getParam(0): [ParamDecl] x
|
|
# 111| getParam(1): [ParamDecl] y
|
|
# 115| getMember(10): [PatternBindingDecl] var ... = ...
|
|
# 115| getPattern(0): [TypedPattern] ... as ...
|
|
# 115| getSubPattern(): [NamedPattern] hasWillSet1
|
|
# 115| getTypeRepr(): [TypeRepr] Int
|
|
# 115| getMember(11): [ConcreteVarDecl] hasWillSet1
|
|
# 116| getAccessorDecl(0): [AccessorDecl] willSet
|
|
# 116| getSelfParam(): [ParamDecl] self
|
|
# 116| getParam(0): [ParamDecl] newValue
|
|
# 116| getBody(): [BraceStmt] { ... }
|
|
# 115| getAccessorDecl(1): [AccessorDecl] get
|
|
# 115| getSelfParam(): [ParamDecl] self
|
|
# 115| getBody(): [BraceStmt] { ... }
|
|
# 115| getAccessorDecl(2): [AccessorDecl] set
|
|
# 115| getSelfParam(): [ParamDecl] self
|
|
# 115| getParam(0): [ParamDecl] value
|
|
# 115| getBody(): [BraceStmt] { ... }
|
|
# 115| getAccessorDecl(3): [AccessorDecl] (unnamed function decl)
|
|
# 115| getSelfParam(): [ParamDecl] self
|
|
# 115| getBody(): [BraceStmt] { ... }
|
|
# 115| getElement(0): [YieldStmt] yield ...
|
|
# 119| getMember(12): [PatternBindingDecl] var ... = ...
|
|
# 119| getPattern(0): [TypedPattern] ... as ...
|
|
# 119| getSubPattern(): [NamedPattern] hasWillSet2
|
|
# 119| getTypeRepr(): [TypeRepr] Int
|
|
# 119| getMember(13): [ConcreteVarDecl] hasWillSet2
|
|
# 120| getAccessorDecl(0): [AccessorDecl] willSet
|
|
# 120| getSelfParam(): [ParamDecl] self
|
|
# 120| getParam(0): [ParamDecl] newValue
|
|
# 120| getBody(): [BraceStmt] { ... }
|
|
# 119| getAccessorDecl(1): [AccessorDecl] get
|
|
# 119| getSelfParam(): [ParamDecl] self
|
|
# 119| getBody(): [BraceStmt] { ... }
|
|
# 119| getAccessorDecl(2): [AccessorDecl] set
|
|
# 119| getSelfParam(): [ParamDecl] self
|
|
# 119| getParam(0): [ParamDecl] value
|
|
# 119| getBody(): [BraceStmt] { ... }
|
|
# 119| getAccessorDecl(3): [AccessorDecl] (unnamed function decl)
|
|
# 119| getSelfParam(): [ParamDecl] self
|
|
# 119| getBody(): [BraceStmt] { ... }
|
|
# 119| getElement(0): [YieldStmt] yield ...
|
|
# 123| getMember(14): [PatternBindingDecl] var ... = ...
|
|
# 123| getPattern(0): [TypedPattern] ... as ...
|
|
# 123| getSubPattern(): [NamedPattern] hasDidSet1
|
|
# 123| getTypeRepr(): [TypeRepr] Int
|
|
# 123| getMember(15): [ConcreteVarDecl] hasDidSet1
|
|
# 124| getAccessorDecl(0): [AccessorDecl] didSet
|
|
# 124| getSelfParam(): [ParamDecl] self
|
|
# 124| getParam(0): [ParamDecl] oldValue
|
|
# 124| getBody(): [BraceStmt] { ... }
|
|
# 123| getAccessorDecl(1): [AccessorDecl] get
|
|
# 123| getSelfParam(): [ParamDecl] self
|
|
# 123| getBody(): [BraceStmt] { ... }
|
|
# 123| getAccessorDecl(2): [AccessorDecl] set
|
|
# 123| getSelfParam(): [ParamDecl] self
|
|
# 123| getParam(0): [ParamDecl] value
|
|
# 123| getBody(): [BraceStmt] { ... }
|
|
# 123| getAccessorDecl(3): [AccessorDecl] (unnamed function decl)
|
|
# 123| getSelfParam(): [ParamDecl] self
|
|
# 123| getBody(): [BraceStmt] { ... }
|
|
# 123| getElement(0): [YieldStmt] yield ...
|
|
# 127| getMember(16): [PatternBindingDecl] var ... = ...
|
|
# 127| getPattern(0): [TypedPattern] ... as ...
|
|
# 127| getSubPattern(): [NamedPattern] hasDidSet2
|
|
# 127| getTypeRepr(): [TypeRepr] Int
|
|
# 127| getMember(17): [ConcreteVarDecl] hasDidSet2
|
|
# 128| getAccessorDecl(0): [AccessorDecl] didSet
|
|
# 128| getSelfParam(): [ParamDecl] self
|
|
# 128| getBody(): [BraceStmt] { ... }
|
|
# 127| getAccessorDecl(1): [AccessorDecl] get
|
|
# 127| getSelfParam(): [ParamDecl] self
|
|
# 127| getBody(): [BraceStmt] { ... }
|
|
# 127| getAccessorDecl(2): [AccessorDecl] set
|
|
# 127| getSelfParam(): [ParamDecl] self
|
|
# 127| getParam(0): [ParamDecl] value
|
|
# 127| getBody(): [BraceStmt] { ... }
|
|
# 127| getAccessorDecl(3): [AccessorDecl] (unnamed function decl)
|
|
# 127| getSelfParam(): [ParamDecl] self
|
|
# 127| getBody(): [BraceStmt] { ... }
|
|
# 127| getElement(0): [YieldStmt] yield ...
|
|
# 131| getMember(18): [PatternBindingDecl] var ... = ...
|
|
# 131| getPattern(0): [TypedPattern] ... as ...
|
|
# 131| getSubPattern(): [NamedPattern] hasBoth
|
|
# 131| getTypeRepr(): [TypeRepr] Int
|
|
# 131| getMember(19): [ConcreteVarDecl] hasBoth
|
|
# 132| getAccessorDecl(0): [AccessorDecl] willSet
|
|
# 132| getSelfParam(): [ParamDecl] self
|
|
# 132| getParam(0): [ParamDecl] newValue
|
|
# 132| getBody(): [BraceStmt] { ... }
|
|
# 134| getAccessorDecl(1): [AccessorDecl] didSet
|
|
# 134| getSelfParam(): [ParamDecl] self
|
|
# 134| getBody(): [BraceStmt] { ... }
|
|
# 131| getAccessorDecl(2): [AccessorDecl] get
|
|
# 131| getSelfParam(): [ParamDecl] self
|
|
# 131| getBody(): [BraceStmt] { ... }
|
|
# 131| getAccessorDecl(3): [AccessorDecl] set
|
|
# 131| getSelfParam(): [ParamDecl] self
|
|
# 131| getParam(0): [ParamDecl] value
|
|
# 131| getBody(): [BraceStmt] { ... }
|
|
# 131| getAccessorDecl(4): [AccessorDecl] (unnamed function decl)
|
|
# 131| getSelfParam(): [ParamDecl] self
|
|
# 131| getBody(): [BraceStmt] { ... }
|
|
# 131| getElement(0): [YieldStmt] yield ...
|
|
# 81| getMember(20): [ConstructorDecl] init(normalField:hasWillSet1:hasWillSet2:hasDidSet1:hasDidSet2:hasBoth:)
|
|
# 81| getSelfParam(): [ParamDecl] self
|
|
# 81| getParam(0): [ParamDecl] normalField
|
|
# 81| getParam(1): [ParamDecl] hasWillSet1
|
|
# 81| getParam(2): [ParamDecl] hasWillSet2
|
|
# 81| getParam(3): [ParamDecl] hasDidSet1
|
|
# 81| getParam(4): [ParamDecl] hasDidSet2
|
|
# 81| getParam(5): [ParamDecl] hasBoth
|
|
# 89| [Comment] // A field can be marked as read-only by dirctly implementing
|
|
# 89|
|
|
# 90| [Comment] // the getter between the braces.
|
|
# 90|
|
|
# 95| [Comment] // Or by adding an access declaration
|
|
# 95|
|
|
# 138| [ExtensionDecl] extension
|
|
# 139| getMember(0): [ConcreteFuncDecl] id()
|
|
# 139| getSelfParam(): [ParamDecl] self
|
|
# 139| getBody(): [BraceStmt] { ... }
|
|
# 140| getElement(0): [ReturnStmt] return ...
|
|
# 140| getResult(): [DeclRefExpr] self
|
|
# 144| [TopLevelCodeDecl] { ... }
|
|
# 144| getBody(): [BraceStmt] { ... }
|
|
# 144| getElement(0): [CallExpr] call to id()
|
|
# 144| getFunction(): [MethodRefExpr] .id()
|
|
# 144| getBase(): [IntegerLiteralExpr] 42
|
|
# 146| [ClassDecl] GenericClass
|
|
# 146| getGenericTypeParam(0): [GenericTypeParamDecl] A
|
|
# 146| getGenericTypeParam(1): [GenericTypeParamDecl] B
|
|
# 146| getGenericTypeParam(2): [GenericTypeParamDecl] C
|
|
# 147| getMember(0): [ConcreteFuncDecl] genericMethod(_:_:_:)
|
|
# 147| getSelfParam(): [ParamDecl] self
|
|
# 147| getParam(0): [ParamDecl] _
|
|
# 147| getParam(1): [ParamDecl] _
|
|
# 147| getParam(2): [ParamDecl] _
|
|
# 147| getBody(): [BraceStmt] { ... }
|
|
# 146| getMember(1): [DestructorDecl] deinit()
|
|
# 146| getSelfParam(): [ParamDecl] self
|
|
# 146| getBody(): [BraceStmt] { ... }
|
|
# 146| getMember(2): [ConstructorDecl] init()
|
|
# 146| getSelfParam(): [ParamDecl] self
|
|
# 146| getBody(): [BraceStmt] { ... }
|
|
# 146| getElement(0): [ReturnStmt] return
|
|
# 150| [ConcreteFuncDecl] genericFunc(_:_:_:)
|
|
# 150| getGenericTypeParam(0): [GenericTypeParamDecl] A
|
|
# 150| getGenericTypeParam(1): [GenericTypeParamDecl] B
|
|
# 150| getGenericTypeParam(2): [GenericTypeParamDecl] C
|
|
# 150| getParam(0): [ParamDecl] _
|
|
# 150| getParam(1): [ParamDecl] _
|
|
# 150| getParam(2): [ParamDecl] _
|
|
# 150| getBody(): [BraceStmt] { ... }
|
|
expressions.swift:
|
|
# 1| [TopLevelCodeDecl] { ... }
|
|
# 1| getBody(): [BraceStmt] { ... }
|
|
# 1| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 1| getInit(0): [IntegerLiteralExpr] 15
|
|
# 1| getPattern(0): [NamedPattern] a
|
|
# 1| [ConcreteVarDecl] a
|
|
# 2| [TopLevelCodeDecl] { ... }
|
|
# 2| getBody(): [BraceStmt] { ... }
|
|
# 2| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 2| getInit(0): [FloatLiteralExpr] 15.15
|
|
# 2| getPattern(0): [NamedPattern] b
|
|
# 2| [ConcreteVarDecl] b
|
|
# 3| [TopLevelCodeDecl] { ... }
|
|
# 3| getBody(): [BraceStmt] { ... }
|
|
# 3| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 3| getInit(0): [BooleanLiteralExpr] true
|
|
# 3| getPattern(0): [NamedPattern] b1
|
|
# 3| [ConcreteVarDecl] b1
|
|
# 4| [TopLevelCodeDecl] { ... }
|
|
# 4| getBody(): [BraceStmt] { ... }
|
|
# 4| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 4| getInit(0): [BooleanLiteralExpr] false
|
|
# 4| getPattern(0): [NamedPattern] b2
|
|
# 4| [ConcreteVarDecl] b2
|
|
# 5| [TopLevelCodeDecl] { ... }
|
|
# 5| getBody(): [BraceStmt] { ... }
|
|
# 5| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 5| getInit(0): [MagicIdentifierLiteralExpr] #...
|
|
# 5| getPattern(0): [NamedPattern] m
|
|
# 5| [ConcreteVarDecl] m
|
|
# 6| [TopLevelCodeDecl] { ... }
|
|
# 6| getBody(): [BraceStmt] { ... }
|
|
# 6| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 6| getInit(0): [StringLiteralExpr] hello world
|
|
# 6| getPattern(0): [NamedPattern] s
|
|
# 6| [ConcreteVarDecl] s
|
|
# 7| [TopLevelCodeDecl] { ... }
|
|
# 7| getBody(): [BraceStmt] { ... }
|
|
# 7| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 7| getInit(0): [InterpolatedStringLiteralExpr] "..."
|
|
# 7| getAppendingExpr(): [TapExpr] TapExpr
|
|
# 7| getSubExpr(): [OpaqueValueExpr] OpaqueValueExpr
|
|
# 7| getBody(): [BraceStmt] { ... }
|
|
# 7| getElement(1): [CallExpr] call to appendLiteral(_:)
|
|
# 7| getFunction(): [MethodRefExpr] .appendLiteral(_:)
|
|
# 7| getBase(): [InOutExpr] &...
|
|
# 7| getSubExpr(): [DeclRefExpr] $interpolation
|
|
# 7| getArgument(0): [Argument] : hello
|
|
# 7| getExpr(): [StringLiteralExpr] hello
|
|
# 7| getElement(2): [CallExpr] call to appendInterpolation(_:)
|
|
# 7| getFunction(): [MethodRefExpr] .appendInterpolation(_:)
|
|
# 7| getBase(): [InOutExpr] &...
|
|
# 7| getSubExpr(): [DeclRefExpr] $interpolation
|
|
# 7| getArgument(0): [Argument] : a
|
|
# 7| getExpr(): [DeclRefExpr] a
|
|
# 7| getElement(3): [CallExpr] call to appendLiteral(_:)
|
|
# 7| getFunction(): [MethodRefExpr] .appendLiteral(_:)
|
|
# 7| getBase(): [InOutExpr] &...
|
|
# 7| getSubExpr(): [DeclRefExpr] $interpolation
|
|
# 7| getArgument(0): [Argument] :
|
|
# 7| getExpr(): [StringLiteralExpr]
|
|
# 7| getPattern(0): [NamedPattern] s1
|
|
# 7| [ConcreteVarDecl] s1
|
|
# 8| [TopLevelCodeDecl] { ... }
|
|
# 8| getBody(): [BraceStmt] { ... }
|
|
# 8| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 8| getInit(0): [NilLiteralExpr] nil
|
|
# 8| getPattern(0): [TypedPattern] ... as ...
|
|
# 8| getSubPattern(): [NamedPattern] n
|
|
# 8| getTypeRepr(): [TypeRepr] Int?
|
|
# 8| [ConcreteVarDecl] n
|
|
# 10| [EnumDecl] AnError
|
|
# 11| getMember(0): [EnumCaseDecl] case ...
|
|
# 11| getMember(1): [EnumElementDecl] failed
|
|
# 14| [ConcreteFuncDecl] failure(_:)
|
|
# 14| getParam(0): [ParamDecl] x
|
|
# 14| getBody(): [BraceStmt] { ... }
|
|
# 15| getElement(0): [GuardStmt] guard ... else { ... }
|
|
# 15| getCondition(): [StmtCondition] StmtCondition
|
|
# 15| getElement(0): [ConditionElement] ... .!=(_:_:) ...
|
|
# 15| getBoolean(): [BinaryExpr] ... .!=(_:_:) ...
|
|
# 15| getFunction(): [MethodRefExpr] .!=(_:_:)
|
|
# 15| getBase(): [TypeExpr] Int.Type
|
|
# 15| getTypeRepr(): [TypeRepr] Int
|
|
# 15| getArgument(0): [Argument] : x
|
|
# 15| getExpr(): [DeclRefExpr] x
|
|
# 15| getArgument(1): [Argument] : 0
|
|
# 15| getExpr(): [IntegerLiteralExpr] 0
|
|
# 15| getBody(): [BraceStmt] { ... }
|
|
# 16| getElement(0): [ThrowStmt] throw ...
|
|
# 16| getSubExpr(): [MethodRefExpr] .failed
|
|
# 16| getBase(): [TypeExpr] AnError.Type
|
|
# 16| getTypeRepr(): [TypeRepr] AnError
|
|
# 20| [TopLevelCodeDecl] { ... }
|
|
# 20| getBody(): [BraceStmt] { ... }
|
|
# 20| getElement(0): [ForceTryExpr] try! ...
|
|
# 20| getSubExpr(): [CallExpr] call to failure(_:)
|
|
# 20| getFunction(): [DeclRefExpr] failure(_:)
|
|
# 20| getArgument(0): [Argument] : 11
|
|
# 20| getExpr(): [IntegerLiteralExpr] 11
|
|
# 21| [TopLevelCodeDecl] { ... }
|
|
# 21| getBody(): [BraceStmt] { ... }
|
|
# 21| getElement(0): [OptionalTryExpr] try? ...
|
|
# 21| getSubExpr(): [CallExpr] call to failure(_:)
|
|
# 21| getFunction(): [DeclRefExpr] failure(_:)
|
|
# 21| getArgument(0): [Argument] : 11
|
|
# 21| getExpr(): [IntegerLiteralExpr] 11
|
|
# 23| [ClassDecl] Klass
|
|
# 24| getMember(0): [ConstructorDecl] init()
|
|
# 24| getSelfParam(): [ParamDecl] self
|
|
# 24| getBody(): [BraceStmt] { ... }
|
|
# 24| getElement(0): [ReturnStmt] return
|
|
# 23| getMember(1): [DestructorDecl] deinit()
|
|
# 23| getSelfParam(): [ParamDecl] self
|
|
# 23| getBody(): [BraceStmt] { ... }
|
|
# 27| [TopLevelCodeDecl] { ... }
|
|
# 27| getBody(): [BraceStmt] { ... }
|
|
# 27| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 27| getInit(0): [CallExpr] call to init()
|
|
# 27| getFunction(): [ConstructorRefCallExpr] call to init()
|
|
# 27| getFunction(): [DeclRefExpr] init()
|
|
# 27| getArgument(0): [Argument] : Klass.Type
|
|
# 27| getExpr(): [TypeExpr] Klass.Type
|
|
# 27| getTypeRepr(): [TypeRepr] Klass
|
|
# 27| getPattern(0): [NamedPattern] klass
|
|
# 27| [ConcreteVarDecl] klass
|
|
# 29| [TopLevelCodeDecl] { ... }
|
|
# 29| getBody(): [BraceStmt] { ... }
|
|
# 29| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 29| getInit(0): [DictionaryExpr] [...]
|
|
# 29| getElement(0): [TupleExpr] (...)
|
|
# 29| getElement(0): [StringLiteralExpr] 1
|
|
# 29| getElement(1): [StringLiteralExpr] 2
|
|
# 29| getPattern(0): [NamedPattern] d
|
|
# 29| [ConcreteVarDecl] d
|
|
# 30| [TopLevelCodeDecl] { ... }
|
|
# 30| getBody(): [BraceStmt] { ... }
|
|
# 30| getElement(0): [AssignExpr] ... = ...
|
|
# 30| getDest(): [DiscardAssignmentExpr] _
|
|
# 30| getSource(): [IntegerLiteralExpr] 15
|
|
# 31| [TopLevelCodeDecl] { ... }
|
|
# 31| getBody(): [BraceStmt] { ... }
|
|
# 31| getElement(0): [AssignExpr] ... = ...
|
|
# 31| getDest(): [DiscardAssignmentExpr] _
|
|
# 31| getSource(): [IntegerLiteralExpr] 15
|
|
# 32| [TopLevelCodeDecl] { ... }
|
|
# 32| getBody(): [BraceStmt] { ... }
|
|
# 32| getElement(0): [AssignExpr] ... = ...
|
|
# 32| getDest(): [DiscardAssignmentExpr] _
|
|
# 32| getSource(): [IntegerLiteralExpr] 15
|
|
# 33| [TopLevelCodeDecl] { ... }
|
|
# 33| getBody(): [BraceStmt] { ... }
|
|
# 33| getElement(0): [AssignExpr] ... = ...
|
|
# 33| getDest(): [DiscardAssignmentExpr] _
|
|
# 33| getSource(): [IntegerLiteralExpr] 15
|
|
# 34| [TopLevelCodeDecl] { ... }
|
|
# 34| getBody(): [BraceStmt] { ... }
|
|
# 34| getElement(0): [AssignExpr] ... = ...
|
|
# 34| getDest(): [DiscardAssignmentExpr] _
|
|
# 34| getSource(): [IntegerLiteralExpr] 15
|
|
# 35| [TopLevelCodeDecl] { ... }
|
|
# 35| getBody(): [BraceStmt] { ... }
|
|
# 35| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 35| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 35| getArgument(0): [Argument] : [...]
|
|
# 35| getExpr(): [VarargExpansionExpr] [...]
|
|
# 35| getSubExpr(): [ArrayExpr] [...]
|
|
# 35| getElement(0): [SubscriptExpr] ...[...]
|
|
# 35| getBase(): [DeclRefExpr] d
|
|
# 35| getArgument(0): [Argument] : 1
|
|
# 35| getExpr(): [StringLiteralExpr] 1
|
|
# 35| getArgument(1): [Argument] separator: default separator
|
|
# 35| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 35| getArgument(2): [Argument] terminator: default terminator
|
|
# 35| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 37| [ConcreteFuncDecl] closured(closure:)
|
|
# 37| getParam(0): [ParamDecl] closure
|
|
# 37| getBody(): [BraceStmt] { ... }
|
|
# 38| getElement(0): [CallExpr] call to ...
|
|
# 38| getFunction(): [DeclRefExpr] closure
|
|
# 38| getArgument(0): [Argument] : 5
|
|
# 38| getExpr(): [IntegerLiteralExpr] 5
|
|
# 38| getArgument(1): [Argument] : 7
|
|
# 38| getExpr(): [IntegerLiteralExpr] 7
|
|
# 41| [TopLevelCodeDecl] { ... }
|
|
# 41| getBody(): [BraceStmt] { ... }
|
|
# 41| getElement(0): [CallExpr] call to closured(closure:)
|
|
# 41| getFunction(): [DeclRefExpr] closured(closure:)
|
|
# 41| getArgument(0): [Argument] closure: { ... }
|
|
# 41| getExpr(): [ClosureExpr] { ... }
|
|
# 41| getParam(0): [ParamDecl] x
|
|
# 41| getParam(1): [ParamDecl] y
|
|
# 41| getBody(): [BraceStmt] { ... }
|
|
# 42| getElement(0): [ReturnStmt] return ...
|
|
# 42| getResult(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 42| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 42| getBase(): [TypeExpr] Int.Type
|
|
# 42| getTypeRepr(): [TypeRepr] Int
|
|
# 42| getArgument(0): [Argument] : x
|
|
# 42| getExpr(): [DeclRefExpr] x
|
|
# 42| getArgument(1): [Argument] : y
|
|
# 42| getExpr(): [DeclRefExpr] y
|
|
# 44| [TopLevelCodeDecl] { ... }
|
|
# 44| getBody(): [BraceStmt] { ... }
|
|
# 44| getElement(0): [CallExpr] call to closured(closure:)
|
|
# 44| getFunction(): [DeclRefExpr] closured(closure:)
|
|
# 44| getArgument(0): [Argument] closure: { ... }
|
|
# 44| getExpr(): [ClosureExpr] { ... }
|
|
# 44| getParam(0): [ParamDecl] x
|
|
# 44| getParam(1): [ParamDecl] y
|
|
# 44| getBody(): [BraceStmt] { ... }
|
|
# 45| getElement(0): [ReturnStmt] return ...
|
|
# 45| getResult(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 45| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 45| getBase(): [TypeExpr] Int.Type
|
|
# 45| getTypeRepr(): [TypeRepr] Int
|
|
# 45| getArgument(0): [Argument] : x
|
|
# 45| getExpr(): [DeclRefExpr] x
|
|
# 45| getArgument(1): [Argument] : y
|
|
# 45| getExpr(): [DeclRefExpr] y
|
|
# 47| [TopLevelCodeDecl] { ... }
|
|
# 47| getBody(): [BraceStmt] { ... }
|
|
# 47| getElement(0): [CallExpr] call to closured(closure:)
|
|
# 47| getFunction(): [DeclRefExpr] closured(closure:)
|
|
# 47| getArgument(0): [Argument] closure: { ... }
|
|
# 47| getExpr(): [ClosureExpr] { ... }
|
|
# 47| getParam(0): [ParamDecl] $0
|
|
# 47| getParam(1): [ParamDecl] $1
|
|
# 47| getBody(): [BraceStmt] { ... }
|
|
# 47| getElement(0): [ReturnStmt] return ...
|
|
# 47| getResult(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 47| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 47| getBase(): [TypeExpr] Int.Type
|
|
# 47| getTypeRepr(): [TypeRepr] Int
|
|
# 47| getArgument(0): [Argument] : $0
|
|
# 47| getExpr(): [DeclRefExpr] $0
|
|
# 47| getArgument(1): [Argument] : $1
|
|
# 47| getExpr(): [DeclRefExpr] $1
|
|
# 48| [TopLevelCodeDecl] { ... }
|
|
# 48| getBody(): [BraceStmt] { ... }
|
|
# 48| getElement(0): [CallExpr] call to closured(closure:)
|
|
# 48| getFunction(): [DeclRefExpr] closured(closure:)
|
|
# 48| getArgument(0): [Argument] closure: { ... }
|
|
# 48| getExpr(): [ClosureExpr] { ... }
|
|
# 48| getParam(0): [ParamDecl] $0
|
|
# 48| getParam(1): [ParamDecl] $1
|
|
# 48| getBody(): [BraceStmt] { ... }
|
|
# 48| getElement(0): [ReturnStmt] return ...
|
|
# 48| getResult(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 48| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 48| getBase(): [TypeExpr] Int.Type
|
|
# 48| getTypeRepr(): [TypeRepr] Int
|
|
# 48| getArgument(0): [Argument] : $0
|
|
# 48| getExpr(): [DeclRefExpr] $0
|
|
# 48| getArgument(1): [Argument] : $1
|
|
# 48| getExpr(): [DeclRefExpr] $1
|
|
# 50| [StructDecl] S
|
|
# 51| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 51| getPattern(0): [TypedPattern] ... as ...
|
|
# 51| getSubPattern(): [NamedPattern] x
|
|
# 51| getTypeRepr(): [TypeRepr] Int
|
|
# 51| getMember(1): [ConcreteVarDecl] x
|
|
# 51| getAccessorDecl(0): [AccessorDecl] get
|
|
# 51| getSelfParam(): [ParamDecl] self
|
|
# 51| getBody(): [BraceStmt] { ... }
|
|
# 50| getMember(2): [ConstructorDecl] init(x:)
|
|
# 50| getSelfParam(): [ParamDecl] self
|
|
# 50| getParam(0): [ParamDecl] x
|
|
# 54| [TopLevelCodeDecl] { ... }
|
|
# 54| getBody(): [BraceStmt] { ... }
|
|
# 54| getElement(0): [AssignExpr] ... = ...
|
|
# 54| getDest(): [DiscardAssignmentExpr] _
|
|
# 54| getSource(): [KeyPathExpr] #keyPath(...)
|
|
# 54| getRoot(): [TypeRepr] S
|
|
# 56| [ConcreteFuncDecl] unsafeFunction(pointer:)
|
|
# 56| getParam(0): [ParamDecl] pointer
|
|
# 56| getBody(): [BraceStmt] { ... }
|
|
# 58| [TopLevelCodeDecl] { ... }
|
|
# 58| getBody(): [BraceStmt] { ... }
|
|
# 58| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 58| getInit(0): [IntegerLiteralExpr] 1234
|
|
# 58| getPattern(0): [NamedPattern] myNumber
|
|
# 58| [ConcreteVarDecl] myNumber
|
|
# 59| [TopLevelCodeDecl] { ... }
|
|
# 59| getBody(): [BraceStmt] { ... }
|
|
# 59| getElement(0): [CallExpr] call to unsafeFunction(pointer:)
|
|
# 59| getFunction(): [DeclRefExpr] unsafeFunction(pointer:)
|
|
# 59| getArgument(0): [Argument] pointer: &...
|
|
# 59| getExpr(): [InOutExpr] &...
|
|
# 59| getSubExpr(): [DeclRefExpr] myNumber
|
|
# 60| [TopLevelCodeDecl] { ... }
|
|
# 60| getBody(): [BraceStmt] { ... }
|
|
# 60| getElement(0): [CallExpr] call to withUnsafePointer(to:_:)
|
|
# 60| getFunction(): [DeclRefExpr] withUnsafePointer(to:_:)
|
|
# 60| getArgument(0): [Argument] to: myNumber
|
|
# 60| getExpr(): [DeclRefExpr] myNumber
|
|
# 60| getArgument(1): [Argument] : { ... }
|
|
# 60| getExpr(): [ClosureExpr] { ... }
|
|
# 60| getParam(0): [ParamDecl] $0
|
|
# 60| getBody(): [BraceStmt] { ... }
|
|
# 60| getElement(0): [ReturnStmt] return ...
|
|
# 60| getResult(): [CallExpr] call to unsafeFunction(pointer:)
|
|
# 60| getFunction(): [DeclRefExpr] unsafeFunction(pointer:)
|
|
# 60| getArgument(0): [Argument] pointer: $0
|
|
# 60| getExpr(): [DeclRefExpr] $0
|
|
# 62| [ClassDecl] FailingToInit
|
|
# 63| getMember(0): [ConstructorDecl] init(x:)
|
|
# 63| getSelfParam(): [ParamDecl] self
|
|
# 63| getParam(0): [ParamDecl] x
|
|
# 63| getBody(): [BraceStmt] { ... }
|
|
# 64| getElement(0): [IfStmt] if ... then { ... }
|
|
# 64| getCondition(): [StmtCondition] StmtCondition
|
|
# 64| getElement(0): [ConditionElement] ... .<(_:_:) ...
|
|
# 64| getBoolean(): [BinaryExpr] ... .<(_:_:) ...
|
|
# 64| getFunction(): [MethodRefExpr] .<(_:_:)
|
|
# 64| getBase(): [TypeExpr] Int.Type
|
|
# 64| getTypeRepr(): [TypeRepr] Int
|
|
# 64| getArgument(0): [Argument] : x
|
|
# 64| getExpr(): [DeclRefExpr] x
|
|
# 64| getArgument(1): [Argument] : 0
|
|
# 64| getExpr(): [IntegerLiteralExpr] 0
|
|
# 64| getThen(): [BraceStmt] { ... }
|
|
# 65| getElement(0): [FailStmt] fail
|
|
# 67| getElement(1): [ReturnStmt] return
|
|
# 62| getMember(1): [DestructorDecl] deinit()
|
|
# 62| getSelfParam(): [ParamDecl] self
|
|
# 62| getBody(): [BraceStmt] { ... }
|
|
# 70| [ClassDecl] Base
|
|
# 71| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 71| getPattern(0): [TypedPattern] ... as ...
|
|
# 71| getSubPattern(): [NamedPattern] xx
|
|
# 71| getTypeRepr(): [TypeRepr] Int
|
|
# 71| getMember(1): [ConcreteVarDecl] xx
|
|
# 71| getAccessorDecl(0): [AccessorDecl] get
|
|
# 71| getSelfParam(): [ParamDecl] self
|
|
# 71| getBody(): [BraceStmt] { ... }
|
|
# 72| getMember(2): [ConstructorDecl] init(x:)
|
|
# 72| getSelfParam(): [ParamDecl] self
|
|
# 72| getParam(0): [ParamDecl] x
|
|
# 72| getBody(): [BraceStmt] { ... }
|
|
# 73| getElement(0): [AssignExpr] ... = ...
|
|
# 73| getDest(): [MemberRefExpr] .xx
|
|
# 73| getBase(): [DeclRefExpr] self
|
|
# 73| getSource(): [DeclRefExpr] x
|
|
# 74| getElement(1): [ReturnStmt] return
|
|
# 70| getMember(3): [DestructorDecl] deinit()
|
|
# 70| getSelfParam(): [ParamDecl] self
|
|
# 70| getBody(): [BraceStmt] { ... }
|
|
# 77| [ClassDecl] Derived
|
|
# 78| getMember(0): [ConstructorDecl] init()
|
|
# 78| getSelfParam(): [ParamDecl] self
|
|
# 78| getBody(): [BraceStmt] { ... }
|
|
# 79| getElement(0): [RebindSelfInConstructorExpr] self = ...
|
|
# 79| getSubExpr(): [CallExpr] call to ...
|
|
# 79| getFunction(): [DotSyntaxCallExpr] call to ...
|
|
# 79| getFunction(): [OtherConstructorDeclRefExpr] init(x:)
|
|
# 79| getArgument(0): [Argument] : super
|
|
# 79| getExpr(): [SuperRefExpr] super
|
|
# 79| getArgument(0): [Argument] x: 22
|
|
# 79| getExpr(): [IntegerLiteralExpr] 22
|
|
# 80| getElement(1): [ReturnStmt] return
|
|
# 77| getMember(1): [ConstructorDecl] init(x:)
|
|
# 77| getSelfParam(): [ParamDecl] self
|
|
# 77| getMember(2): [DestructorDecl] deinit()
|
|
# 77| getSelfParam(): [ParamDecl] self
|
|
# 77| getBody(): [BraceStmt] { ... }
|
|
# 77| [CallExpr] call to _unimplementedInitializer(className:initName:file:line:column:)
|
|
# 77| getFunction(): [DeclRefExpr] _unimplementedInitializer(className:initName:file:line:column:)
|
|
# 77| getArgument(0): [Argument] : expressions.Derived
|
|
# 77| getExpr(): [StringLiteralExpr] expressions.Derived
|
|
# 77| getArgument(1): [Argument] : #...
|
|
# 77| getExpr(): [MagicIdentifierLiteralExpr] #...
|
|
# 77| getArgument(2): [Argument] : #...
|
|
# 77| getExpr(): [MagicIdentifierLiteralExpr] #...
|
|
# 77| getArgument(3): [Argument] : #...
|
|
# 77| getExpr(): [MagicIdentifierLiteralExpr] #...
|
|
# 77| getArgument(4): [Argument] : #...
|
|
# 77| getExpr(): [MagicIdentifierLiteralExpr] #...
|
|
# 83| [TopLevelCodeDecl] { ... }
|
|
# 83| getBody(): [BraceStmt] { ... }
|
|
# 83| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 83| getInit(0): [CallExpr] call to init()
|
|
# 83| getFunction(): [ConstructorRefCallExpr] call to init()
|
|
# 83| getFunction(): [DeclRefExpr] init()
|
|
# 83| getArgument(0): [Argument] : Derived.Type
|
|
# 83| getExpr(): [TypeExpr] Derived.Type
|
|
# 83| getTypeRepr(): [TypeRepr] Derived
|
|
# 83| getPattern(0): [NamedPattern] derived
|
|
# 83| [ConcreteVarDecl] derived
|
|
# 84| [TopLevelCodeDecl] { ... }
|
|
# 84| getBody(): [BraceStmt] { ... }
|
|
# 84| getElement(0): [AssignExpr] ... = ...
|
|
# 84| getDest(): [DiscardAssignmentExpr] _
|
|
# 84| getSource(): [MemberRefExpr] .xx
|
|
# 84| getBase(): [DeclRefExpr] derived
|
|
# 86| [TopLevelCodeDecl] { ... }
|
|
# 86| getBody(): [BraceStmt] { ... }
|
|
# 86| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 86| getPattern(0): [TypedPattern] ... as ...
|
|
# 86| getSubPattern(): [NamedPattern] opt
|
|
# 86| getTypeRepr(): [TypeRepr] Int?
|
|
# 86| [ConcreteVarDecl] opt
|
|
# 87| [TopLevelCodeDecl] { ... }
|
|
# 87| getBody(): [BraceStmt] { ... }
|
|
# 87| getElement(0): [ForceValueExpr] ...!
|
|
# 87| getSubExpr(): [DeclRefExpr] opt
|
|
# 88| [TopLevelCodeDecl] { ... }
|
|
# 88| getBody(): [BraceStmt] { ... }
|
|
# 88| getElement(0): [ForceValueExpr] ...!
|
|
# 88| getSubExpr(): [SubscriptExpr] ...[...]
|
|
# 88| getBase(): [DeclRefExpr] d
|
|
# 88| getArgument(0): [Argument] : a
|
|
# 88| getExpr(): [StringLiteralExpr] a
|
|
# 90| [ClassDecl] ToPtr
|
|
# 90| getMember(0): [DestructorDecl] deinit()
|
|
# 90| getSelfParam(): [ParamDecl] self
|
|
# 90| getBody(): [BraceStmt] { ... }
|
|
# 90| getMember(1): [ConstructorDecl] init()
|
|
# 90| getSelfParam(): [ParamDecl] self
|
|
# 90| getBody(): [BraceStmt] { ... }
|
|
# 90| getElement(0): [ReturnStmt] return
|
|
# 92| [TopLevelCodeDecl] { ... }
|
|
# 92| getBody(): [BraceStmt] { ... }
|
|
# 92| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 92| getInit(0): [CallExpr] call to toOpaque()
|
|
# 92| getFunction(): [MethodRefExpr] .toOpaque()
|
|
# 92| getBase(): [CallExpr] call to passRetained(_:)
|
|
# 92| getFunction(): [MethodRefExpr] .passRetained(_:)
|
|
# 92| getBase(): [TypeExpr] Unmanaged<ToPtr>.Type
|
|
# 92| getTypeRepr(): [TypeRepr] Unmanaged<ToPtr>
|
|
# 92| getArgument(0): [Argument] : call to init()
|
|
# 92| getExpr(): [CallExpr] call to init()
|
|
# 92| getFunction(): [ConstructorRefCallExpr] call to init()
|
|
# 92| getFunction(): [DeclRefExpr] init()
|
|
# 92| getArgument(0): [Argument] : ToPtr.Type
|
|
# 92| getExpr(): [TypeExpr] ToPtr.Type
|
|
# 92| getTypeRepr(): [TypeRepr] ToPtr
|
|
# 92| getPattern(0): [NamedPattern] opaque
|
|
# 92| [ConcreteVarDecl] opaque
|
|
# 93| [TopLevelCodeDecl] { ... }
|
|
# 93| getBody(): [BraceStmt] { ... }
|
|
# 93| getElement(0): [CallExpr] call to fromOpaque(_:)
|
|
# 93| getFunction(): [MethodRefExpr] .fromOpaque(_:)
|
|
# 93| getBase(): [TypeExpr] Unmanaged<ToPtr>.Type
|
|
# 93| getTypeRepr(): [TypeRepr] Unmanaged<ToPtr>
|
|
# 93| getArgument(0): [Argument] : opaque
|
|
# 93| getExpr(): [DeclRefExpr] opaque
|
|
# 95| [StructDecl] HasProperty
|
|
# 96| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 96| getPattern(0): [TypedPattern] ... as ...
|
|
# 96| getSubPattern(): [NamedPattern] settableField
|
|
# 96| getTypeRepr(): [TypeRepr] Int
|
|
# 96| getMember(1): [ConcreteVarDecl] settableField
|
|
# 97| getAccessorDecl(0): [AccessorDecl] set
|
|
# 97| getSelfParam(): [ParamDecl] self
|
|
# 97| getParam(0): [ParamDecl] newValue
|
|
# 97| getBody(): [BraceStmt] { ... }
|
|
# 98| getAccessorDecl(1): [AccessorDecl] get
|
|
# 98| getSelfParam(): [ParamDecl] self
|
|
# 98| getBody(): [BraceStmt] { ... }
|
|
# 99| getElement(0): [ReturnStmt] return ...
|
|
# 99| getResult(): [IntegerLiteralExpr] 0
|
|
# 96| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 96| getSelfParam(): [ParamDecl] self
|
|
# 96| getBody(): [BraceStmt] { ... }
|
|
# 96| getElement(0): [YieldStmt] yield ...
|
|
# 105| getMember(2): [PatternBindingDecl] var ... = ...
|
|
# 105| getPattern(0): [TypedPattern] ... as ...
|
|
# 105| getSubPattern(): [NamedPattern] readOnlyField1
|
|
# 105| getTypeRepr(): [TypeRepr] Int
|
|
# 105| getMember(3): [ConcreteVarDecl] readOnlyField1
|
|
# 105| getAccessorDecl(0): [AccessorDecl] get
|
|
# 105| getSelfParam(): [ParamDecl] self
|
|
# 105| getBody(): [BraceStmt] { ... }
|
|
# 106| getElement(0): [ReturnStmt] return ...
|
|
# 106| getResult(): [IntegerLiteralExpr] 0
|
|
# 110| getMember(4): [PatternBindingDecl] var ... = ...
|
|
# 110| getPattern(0): [TypedPattern] ... as ...
|
|
# 110| getSubPattern(): [NamedPattern] readOnlyField2
|
|
# 110| getTypeRepr(): [TypeRepr] Int
|
|
# 110| getMember(5): [ConcreteVarDecl] readOnlyField2
|
|
# 111| getAccessorDecl(0): [AccessorDecl] get
|
|
# 111| getSelfParam(): [ParamDecl] self
|
|
# 111| getBody(): [BraceStmt] { ... }
|
|
# 112| getElement(0): [ReturnStmt] return ...
|
|
# 112| getResult(): [IntegerLiteralExpr] 0
|
|
# 116| getMember(6): [PatternBindingDecl] var ... = ...
|
|
# 116| getPattern(0): [TypedPattern] ... as ...
|
|
# 116| getSubPattern(): [NamedPattern] normalField
|
|
# 116| getTypeRepr(): [TypeRepr] Int
|
|
# 116| getMember(7): [ConcreteVarDecl] normalField
|
|
# 116| getAccessorDecl(0): [AccessorDecl] get
|
|
# 116| getSelfParam(): [ParamDecl] self
|
|
# 116| getBody(): [BraceStmt] { ... }
|
|
# 116| getAccessorDecl(1): [AccessorDecl] set
|
|
# 116| getSelfParam(): [ParamDecl] self
|
|
# 116| getParam(0): [ParamDecl] value
|
|
# 116| getBody(): [BraceStmt] { ... }
|
|
# 116| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 116| getSelfParam(): [ParamDecl] self
|
|
# 116| getBody(): [BraceStmt] { ... }
|
|
# 116| getElement(0): [YieldStmt] yield ...
|
|
# 118| getMember(8): [SubscriptDecl] subscript ...
|
|
# 119| getAccessorDecl(0): [AccessorDecl] get
|
|
# 119| getSelfParam(): [ParamDecl] self
|
|
# 118| getParam(0): [ParamDecl] x
|
|
# 119| getBody(): [BraceStmt] { ... }
|
|
# 120| getElement(0): [ReturnStmt] return ...
|
|
# 120| getResult(): [IntegerLiteralExpr] 0
|
|
# 122| getAccessorDecl(1): [AccessorDecl] set
|
|
# 122| getSelfParam(): [ParamDecl] self
|
|
# 122| getParam(0): [ParamDecl] newValue
|
|
# 118| getParam(1): [ParamDecl] x
|
|
# 122| getBody(): [BraceStmt] { ... }
|
|
# 118| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 118| getSelfParam(): [ParamDecl] self
|
|
# 118| getBody(): [BraceStmt] { ... }
|
|
# 118| getElement(0): [YieldStmt] yield ...
|
|
# 118| getParam(0): [ParamDecl] x
|
|
# 125| getMember(9): [SubscriptDecl] subscript ...
|
|
# 125| getAccessorDecl(0): [AccessorDecl] get
|
|
# 125| getSelfParam(): [ParamDecl] self
|
|
# 125| getParam(0): [ParamDecl] x
|
|
# 125| getParam(1): [ParamDecl] y
|
|
# 125| getBody(): [BraceStmt] { ... }
|
|
# 126| getElement(0): [ReturnStmt] return ...
|
|
# 126| getResult(): [IntegerLiteralExpr] 0
|
|
# 125| getParam(0): [ParamDecl] x
|
|
# 125| getParam(1): [ParamDecl] y
|
|
# 95| getMember(10): [ConstructorDecl] init(normalField:)
|
|
# 95| getSelfParam(): [ParamDecl] self
|
|
# 95| getParam(0): [ParamDecl] normalField
|
|
# 103| [Comment] // A field can be marked as read-only by dirctly implementing
|
|
# 103|
|
|
# 104| [Comment] // the getter between the braces.
|
|
# 104|
|
|
# 109| [Comment] // Or by adding an access declaration
|
|
# 109|
|
|
# 130| [ConcreteFuncDecl] testProperties(hp:)
|
|
# 130| getParam(0): [ParamDecl] hp
|
|
# 130| getBody(): [BraceStmt] { ... }
|
|
# 131| getElement(0): [AssignExpr] ... = ...
|
|
# 131| getDest(): [MemberRefExpr] .settableField
|
|
# 131| getBase(): [DeclRefExpr] hp
|
|
# 131| getSource(): [IntegerLiteralExpr] 42
|
|
# 132| getElement(1): [PatternBindingDecl] var ... = ...
|
|
# 132| getInit(0): [MemberRefExpr] .settableField
|
|
# 132| getBase(): [DeclRefExpr] hp
|
|
# 132| getPattern(0): [NamedPattern] x
|
|
# 132| getElement(2): [ConcreteVarDecl] x
|
|
# 133| getElement(3): [PatternBindingDecl] var ... = ...
|
|
# 133| getInit(0): [MemberRefExpr] .readOnlyField1
|
|
# 133| getBase(): [DeclRefExpr] hp
|
|
# 133| getPattern(0): [NamedPattern] y
|
|
# 133| getElement(4): [ConcreteVarDecl] y
|
|
# 134| getElement(5): [PatternBindingDecl] var ... = ...
|
|
# 134| getInit(0): [MemberRefExpr] .readOnlyField2
|
|
# 134| getBase(): [DeclRefExpr] hp
|
|
# 134| getPattern(0): [NamedPattern] z
|
|
# 134| getElement(6): [ConcreteVarDecl] z
|
|
# 135| getElement(7): [AssignExpr] ... = ...
|
|
# 135| getDest(): [MemberRefExpr] .normalField
|
|
# 135| getBase(): [DeclRefExpr] hp
|
|
# 135| getSource(): [IntegerLiteralExpr] 99
|
|
# 136| getElement(8): [PatternBindingDecl] var ... = ...
|
|
# 136| getInit(0): [MemberRefExpr] .normalField
|
|
# 136| getBase(): [DeclRefExpr] hp
|
|
# 136| getPattern(0): [NamedPattern] w
|
|
# 136| getElement(9): [ConcreteVarDecl] w
|
|
# 137| getElement(10): [AssignExpr] ... = ...
|
|
# 137| getDest(): [SubscriptExpr] ...[...]
|
|
# 137| getBase(): [InOutExpr] &...
|
|
# 137| getSubExpr(): [DeclRefExpr] hp
|
|
# 137| getArgument(0): [Argument] : 1
|
|
# 137| getExpr(): [IntegerLiteralExpr] 1
|
|
# 137| getSource(): [IntegerLiteralExpr] 2
|
|
# 138| getElement(11): [ReturnStmt] return ...
|
|
# 138| getResult(): [SubscriptExpr] ...[...]
|
|
# 138| getBase(): [DeclRefExpr] hp
|
|
# 138| getArgument(0): [Argument] : 3
|
|
# 138| getExpr(): [IntegerLiteralExpr] 3
|
|
# 138| getArgument(1): [Argument] : 4
|
|
# 138| getExpr(): [IntegerLiteralExpr] 4
|
|
# 141| [StructDecl] B
|
|
# 142| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 142| getPattern(0): [TypedPattern] ... as ...
|
|
# 142| getSubPattern(): [NamedPattern] x
|
|
# 142| getTypeRepr(): [TypeRepr] Int
|
|
# 142| getMember(1): [ConcreteVarDecl] x
|
|
# 142| getAccessorDecl(0): [AccessorDecl] get
|
|
# 142| getSelfParam(): [ParamDecl] self
|
|
# 142| getBody(): [BraceStmt] { ... }
|
|
# 142| getAccessorDecl(1): [AccessorDecl] set
|
|
# 142| getSelfParam(): [ParamDecl] self
|
|
# 142| getParam(0): [ParamDecl] value
|
|
# 142| getBody(): [BraceStmt] { ... }
|
|
# 142| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 142| getSelfParam(): [ParamDecl] self
|
|
# 142| getBody(): [BraceStmt] { ... }
|
|
# 142| getElement(0): [YieldStmt] yield ...
|
|
# 141| getMember(2): [ConstructorDecl] init(x:)
|
|
# 141| getSelfParam(): [ParamDecl] self
|
|
# 141| getParam(0): [ParamDecl] x
|
|
# 145| [StructDecl] A
|
|
# 146| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 146| getPattern(0): [TypedPattern] ... as ...
|
|
# 146| getSubPattern(): [NamedPattern] b
|
|
# 146| getTypeRepr(): [TypeRepr] B
|
|
# 146| getMember(1): [ConcreteVarDecl] b
|
|
# 146| getAccessorDecl(0): [AccessorDecl] get
|
|
# 146| getSelfParam(): [ParamDecl] self
|
|
# 146| getBody(): [BraceStmt] { ... }
|
|
# 146| getAccessorDecl(1): [AccessorDecl] set
|
|
# 146| getSelfParam(): [ParamDecl] self
|
|
# 146| getParam(0): [ParamDecl] value
|
|
# 146| getBody(): [BraceStmt] { ... }
|
|
# 146| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 146| getSelfParam(): [ParamDecl] self
|
|
# 146| getBody(): [BraceStmt] { ... }
|
|
# 146| getElement(0): [YieldStmt] yield ...
|
|
# 147| getMember(2): [PatternBindingDecl] var ... = ...
|
|
# 147| getPattern(0): [TypedPattern] ... as ...
|
|
# 147| getSubPattern(): [NamedPattern] bs
|
|
# 147| getTypeRepr(): [TypeRepr] [B]
|
|
# 147| getMember(3): [ConcreteVarDecl] bs
|
|
# 147| getAccessorDecl(0): [AccessorDecl] get
|
|
# 147| getSelfParam(): [ParamDecl] self
|
|
# 147| getBody(): [BraceStmt] { ... }
|
|
# 147| getAccessorDecl(1): [AccessorDecl] set
|
|
# 147| getSelfParam(): [ParamDecl] self
|
|
# 147| getParam(0): [ParamDecl] value
|
|
# 147| getBody(): [BraceStmt] { ... }
|
|
# 147| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 147| getSelfParam(): [ParamDecl] self
|
|
# 147| getBody(): [BraceStmt] { ... }
|
|
# 147| getElement(0): [YieldStmt] yield ...
|
|
# 148| getMember(4): [PatternBindingDecl] var ... = ...
|
|
# 148| getPattern(0): [TypedPattern] ... as ...
|
|
# 148| getSubPattern(): [NamedPattern] mayB
|
|
# 148| getTypeRepr(): [TypeRepr] B?
|
|
# 148| getMember(5): [ConcreteVarDecl] mayB
|
|
# 148| getAccessorDecl(0): [AccessorDecl] get
|
|
# 148| getSelfParam(): [ParamDecl] self
|
|
# 148| getBody(): [BraceStmt] { ... }
|
|
# 148| getAccessorDecl(1): [AccessorDecl] set
|
|
# 148| getSelfParam(): [ParamDecl] self
|
|
# 148| getParam(0): [ParamDecl] value
|
|
# 148| getBody(): [BraceStmt] { ... }
|
|
# 148| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 148| getSelfParam(): [ParamDecl] self
|
|
# 148| getBody(): [BraceStmt] { ... }
|
|
# 148| getElement(0): [YieldStmt] yield ...
|
|
# 145| getMember(6): [ConstructorDecl] init(b:bs:mayB:)
|
|
# 145| getSelfParam(): [ParamDecl] self
|
|
# 145| getParam(0): [ParamDecl] b
|
|
# 145| getParam(1): [ParamDecl] bs
|
|
# 145| getParam(2): [ParamDecl] mayB
|
|
# 151| [ConcreteFuncDecl] test(a:keyPathInt:keyPathB:)
|
|
# 151| getParam(0): [ParamDecl] a
|
|
# 151| getParam(1): [ParamDecl] keyPathInt
|
|
# 151| getParam(2): [ParamDecl] keyPathB
|
|
# 151| getBody(): [BraceStmt] { ... }
|
|
# 152| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 152| getInit(0): [KeyPathApplicationExpr] \...[...]
|
|
# 152| getBase(): [DeclRefExpr] a
|
|
# 152| getKeyPath(): [DeclRefExpr] keyPathInt
|
|
# 152| getPattern(0): [NamedPattern] apply_keyPathInt
|
|
# 152| getElement(1): [ConcreteVarDecl] apply_keyPathInt
|
|
# 153| getElement(2): [PatternBindingDecl] var ... = ...
|
|
# 153| getInit(0): [KeyPathApplicationExpr] \...[...]
|
|
# 153| getBase(): [DeclRefExpr] a
|
|
# 153| getKeyPath(): [DeclRefExpr] keyPathB
|
|
# 153| getPattern(0): [NamedPattern] apply_keyPathB
|
|
# 153| getElement(3): [ConcreteVarDecl] apply_keyPathB
|
|
# 154| getElement(4): [PatternBindingDecl] var ... = ...
|
|
# 154| getInit(0): [KeyPathApplicationExpr] \...[...]
|
|
# 154| getBase(): [KeyPathApplicationExpr] \...[...]
|
|
# 154| getBase(): [DeclRefExpr] a
|
|
# 154| getKeyPath(): [DeclRefExpr] keyPathB
|
|
# 154| getKeyPath(): [KeyPathExpr] #keyPath(...)
|
|
# 154| getRoot(): [TypeRepr] B
|
|
# 154| getPattern(0): [NamedPattern] nested_apply
|
|
# 154| getElement(5): [ConcreteVarDecl] nested_apply
|
|
patterns.swift:
|
|
# 1| [ConcreteFuncDecl] basic_patterns()
|
|
# 1| getBody(): [BraceStmt] { ... }
|
|
# 2| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 2| getInit(0): [IntegerLiteralExpr] 42
|
|
# 2| getPattern(0): [NamedPattern] an_int
|
|
# 2| getElement(1): [ConcreteVarDecl] an_int
|
|
# 3| getElement(2): [PatternBindingDecl] var ... = ...
|
|
# 3| getInit(0): [StringLiteralExpr] here
|
|
# 3| getPattern(0): [TypedPattern] ... as ...
|
|
# 3| getSubPattern(): [NamedPattern] a_string
|
|
# 3| getTypeRepr(): [TypeRepr] String
|
|
# 3| getElement(3): [ConcreteVarDecl] a_string
|
|
# 4| getElement(4): [PatternBindingDecl] var ... = ...
|
|
# 4| getInit(0): [TupleExpr] (...)
|
|
# 4| getElement(0): [IntegerLiteralExpr] 1
|
|
# 4| getElement(1): [IntegerLiteralExpr] 2
|
|
# 4| getElement(2): [IntegerLiteralExpr] 3
|
|
# 4| getPattern(0): [TuplePattern] (...)
|
|
# 4| getElement(0): [NamedPattern] x
|
|
# 4| getElement(1): [NamedPattern] y
|
|
# 4| getElement(2): [NamedPattern] z
|
|
# 4| getElement(5): [ConcreteVarDecl] x
|
|
# 4| getElement(6): [ConcreteVarDecl] y
|
|
# 4| getElement(7): [ConcreteVarDecl] z
|
|
# 5| getElement(8): [PatternBindingDecl] var ... = ...
|
|
# 5| getInit(0): [StringLiteralExpr] any
|
|
# 5| getPattern(0): [AnyPattern] _
|
|
# 6| getElement(9): [PatternBindingDecl] var ... = ...
|
|
# 6| getInit(0): [StringLiteralExpr] paren
|
|
# 6| getPattern(0): [AnyPattern] _
|
|
# 9| [ConcreteFuncDecl] switch_patterns()
|
|
# 9| getBody(): [BraceStmt] { ... }
|
|
# 10| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 10| getInit(0): [TupleExpr] (...)
|
|
# 10| getElement(0): [IntegerLiteralExpr] 1
|
|
# 10| getElement(1): [IntegerLiteralExpr] 2
|
|
# 10| getPattern(0): [NamedPattern] point
|
|
# 10| getElement(1): [ConcreteVarDecl] point
|
|
# 11| getElement(2): [SwitchStmt] switch point { ... }
|
|
# 11| getExpr(): [DeclRefExpr] point
|
|
# 12| getCase(0): [CaseStmt] case ...
|
|
# 12| getBody(): [BraceStmt] { ... }
|
|
# 12| getElement(0): [StringLiteralExpr] binding
|
|
# 12| getLabel(0): [CaseLabelItem] let ...
|
|
# 12| getPattern(): [BindingPattern] let ...
|
|
# 12| getSubPattern(): [TuplePattern] (...)
|
|
# 12| getElement(0): [NamedPattern] xx
|
|
# 12| getElement(1): [NamedPattern] yy
|
|
# 15| getElement(3): [SwitchStmt] switch 3 { ... }
|
|
# 15| getExpr(): [IntegerLiteralExpr] 3
|
|
# 16| getCase(0): [CaseStmt] case ...
|
|
# 16| getBody(): [BraceStmt] { ... }
|
|
# 16| getElement(0): [StringLiteralExpr] expr
|
|
# 16| getLabel(0): [CaseLabelItem] =~ ...
|
|
# 16| getPattern(): [ExprPattern] =~ ...
|
|
# 16| getSubExpr(): [SequenceExpr] SequenceExpr
|
|
# 16| getElement(0): [IntegerLiteralExpr] 1
|
|
# 16| getElement(1): [OverloadedDeclRefExpr] OverloadedDeclRefExpr
|
|
# 16| getElement(2): [IntegerLiteralExpr] 2
|
|
# 17| getCase(1): [CaseStmt] case ...
|
|
# 17| getBody(): [BraceStmt] { ... }
|
|
# 17| getElement(0): [StringLiteralExpr]
|
|
# 17| getLabel(0): [CaseLabelItem] _
|
|
# 17| getPattern(): [AnyPattern] _
|
|
# 20| getElement(4): [EnumDecl] Foo
|
|
# 21| getMember(0): [EnumCaseDecl] case ...
|
|
# 21| getMember(1): [EnumElementDecl] bar
|
|
# 21| getMember(2): [EnumElementDecl] baz
|
|
# 21| getParam(0): [ParamDecl] _
|
|
# 21| getParam(1): [ParamDecl] _
|
|
# 24| getElement(5): [PatternBindingDecl] var ... = ...
|
|
# 24| getInit(0): [MethodRefExpr] .bar
|
|
# 24| getBase(): [TypeExpr] Foo.Type
|
|
# 24| getTypeRepr(): [TypeRepr] Foo
|
|
# 24| getPattern(0): [TypedPattern] ... as ...
|
|
# 24| getSubPattern(): [NamedPattern] v
|
|
# 24| getTypeRepr(): [TypeRepr] Foo
|
|
# 24| getElement(6): [ConcreteVarDecl] v
|
|
# 26| getElement(7): [SwitchStmt] switch v { ... }
|
|
# 26| getExpr(): [DeclRefExpr] v
|
|
# 27| getCase(0): [CaseStmt] case ...
|
|
# 27| getBody(): [BraceStmt] { ... }
|
|
# 27| getElement(0): [StringLiteralExpr] bar
|
|
# 27| getLabel(0): [CaseLabelItem] .bar
|
|
# 27| getPattern(): [EnumElementPattern] .bar
|
|
# 28| getCase(1): [CaseStmt] case ...
|
|
# 28| getBody(): [BraceStmt] { ... }
|
|
# 28| getElement(0): [DeclRefExpr] i
|
|
# 28| getLabel(0): [CaseLabelItem] let ...
|
|
# 28| getPattern(): [BindingPattern] let ...
|
|
# 28| getSubPattern(): [EnumElementPattern] .baz(...)
|
|
# 28| getSubPattern(): [TuplePattern] (...)
|
|
# 28| getElement(0): [NamedPattern] i
|
|
# 28| getElement(1): [NamedPattern] s
|
|
# 31| getElement(8): [PatternBindingDecl] var ... = ...
|
|
# 31| getInit(0): [NilLiteralExpr] nil
|
|
# 31| getPattern(0): [TypedPattern] ... as ...
|
|
# 31| getSubPattern(): [NamedPattern] w
|
|
# 31| getTypeRepr(): [TypeRepr] Int?
|
|
# 31| getElement(9): [ConcreteVarDecl] w
|
|
# 33| getElement(10): [SwitchStmt] switch w { ... }
|
|
# 33| getExpr(): [DeclRefExpr] w
|
|
# 34| getCase(0): [CaseStmt] case ...
|
|
# 34| getBody(): [BraceStmt] { ... }
|
|
# 34| getElement(0): [DeclRefExpr] n
|
|
# 34| getLabel(0): [CaseLabelItem] let ...
|
|
# 34| getPattern(): [BindingPattern] let ...
|
|
# 34| getSubPattern(): [OptionalSomePattern] let ...?
|
|
# 34| getSubPattern(): [NamedPattern] n
|
|
# 35| getCase(1): [CaseStmt] case ...
|
|
# 35| getBody(): [BraceStmt] { ... }
|
|
# 35| getElement(0): [StringLiteralExpr] none
|
|
# 35| getLabel(0): [CaseLabelItem] _
|
|
# 35| getPattern(): [AnyPattern] _
|
|
# 38| getElement(11): [PatternBindingDecl] var ... = ...
|
|
# 38| getInit(0): [StringLiteralExpr] any
|
|
# 38| getPattern(0): [TypedPattern] ... as ...
|
|
# 38| getSubPattern(): [NamedPattern] a
|
|
# 38| getTypeRepr(): [TypeRepr] Any
|
|
# 38| getElement(12): [ConcreteVarDecl] a
|
|
# 40| getElement(13): [SwitchStmt] switch a { ... }
|
|
# 40| getExpr(): [DeclRefExpr] a
|
|
# 41| getCase(0): [CaseStmt] case ...
|
|
# 41| getBody(): [BraceStmt] { ... }
|
|
# 41| getElement(0): [StringLiteralExpr] is pattern
|
|
# 41| getLabel(0): [CaseLabelItem] ... is ...
|
|
# 41| getPattern(): [IsPattern] ... is ...
|
|
# 41| getCastTypeRepr(): [TypeRepr] Int
|
|
# 42| getCase(1): [CaseStmt] case ...
|
|
# 42| getBody(): [BraceStmt] { ... }
|
|
# 42| getElement(0): [StringLiteralExpr] as pattern
|
|
# 42| getLabel(0): [CaseLabelItem] let ...
|
|
# 42| getPattern(): [BindingPattern] let ...
|
|
# 42| getSubPattern(): [IsPattern] ... is ...
|
|
# 42| getCastTypeRepr(): [TypeRepr] String
|
|
# 42| getSubPattern(): [NamedPattern] x
|
|
# 43| getCase(2): [CaseStmt] case ...
|
|
# 43| getBody(): [BraceStmt] { ... }
|
|
# 43| getElement(0): [StringLiteralExpr] other
|
|
# 43| getLabel(0): [CaseLabelItem] _
|
|
# 43| getPattern(): [AnyPattern] _
|
|
# 46| getElement(14): [PatternBindingDecl] var ... = ...
|
|
# 46| getInit(0): [BooleanLiteralExpr] true
|
|
# 46| getPattern(0): [NamedPattern] b
|
|
# 46| getElement(15): [ConcreteVarDecl] b
|
|
# 48| getElement(16): [SwitchStmt] switch b { ... }
|
|
# 48| getExpr(): [DeclRefExpr] b
|
|
# 49| getCase(0): [CaseStmt] case ...
|
|
# 49| getBody(): [BraceStmt] { ... }
|
|
# 49| getElement(0): [StringLiteralExpr] true
|
|
# 49| getLabel(0): [CaseLabelItem] true
|
|
# 49| getPattern(): [BoolPattern] true
|
|
# 50| getCase(1): [CaseStmt] case ...
|
|
# 50| getBody(): [BraceStmt] { ... }
|
|
# 50| getElement(0): [StringLiteralExpr] false
|
|
# 50| getLabel(0): [CaseLabelItem] false
|
|
# 50| getPattern(): [BoolPattern] false
|
|
# 12| [ConcreteVarDecl] xx
|
|
# 12| [ConcreteVarDecl] yy
|
|
# 28| [ConcreteVarDecl] i
|
|
# 28| [ConcreteVarDecl] s
|
|
# 34| [ConcreteVarDecl] n
|
|
# 42| [ConcreteVarDecl] x
|
|
statements.swift:
|
|
# 1| [ConcreteFuncDecl] loop()
|
|
# 1| getBody(): [BraceStmt] { ... }
|
|
# 2| getElement(0): [ForEachStmt] for ... in ... { ... }
|
|
# 2| getPattern(): [NamedPattern] i
|
|
# 2| getSequence(): [BinaryExpr] ... ....(_:_:) ...
|
|
# 2| getFunction(): [MethodRefExpr] ....(_:_:)
|
|
# 2| getBase(): [TypeExpr] Int.Type
|
|
# 2| getTypeRepr(): [TypeRepr] Int
|
|
# 2| getArgument(0): [Argument] : 1
|
|
# 2| getExpr(): [IntegerLiteralExpr] 1
|
|
# 2| getArgument(1): [Argument] : 5
|
|
# 2| getExpr(): [IntegerLiteralExpr] 5
|
|
# 2| getBody(): [BraceStmt] { ... }
|
|
# 3| getElement(0): [IfStmt] if ... then { ... } else { ... }
|
|
# 3| getCondition(): [StmtCondition] StmtCondition
|
|
# 3| getElement(0): [ConditionElement] ... .==(_:_:) ...
|
|
# 3| getBoolean(): [BinaryExpr] ... .==(_:_:) ...
|
|
# 3| getFunction(): [MethodRefExpr] .==(_:_:)
|
|
# 3| getBase(): [TypeExpr] Int.Type
|
|
# 3| getTypeRepr(): [TypeRepr] Int
|
|
# 3| getArgument(0): [Argument] : i
|
|
# 3| getExpr(): [DeclRefExpr] i
|
|
# 3| getArgument(1): [Argument] : 3
|
|
# 3| getExpr(): [IntegerLiteralExpr] 3
|
|
# 3| getThen(): [BraceStmt] { ... }
|
|
# 4| getElement(0): [BreakStmt] break
|
|
# 5| getElse(): [BraceStmt] { ... }
|
|
# 6| getElement(0): [ContinueStmt] continue
|
|
# 9| getElement(1): [PatternBindingDecl] var ... = ...
|
|
# 9| getInit(0): [IntegerLiteralExpr] 0
|
|
# 9| getPattern(0): [NamedPattern] i
|
|
# 9| getElement(2): [ConcreteVarDecl] i
|
|
# 10| getElement(3): [WhileStmt] while ... { ... }
|
|
# 10| getCondition(): [StmtCondition] StmtCondition
|
|
# 10| getElement(0): [ConditionElement] ... .<(_:_:) ...
|
|
# 10| getBoolean(): [BinaryExpr] ... .<(_:_:) ...
|
|
# 10| getFunction(): [MethodRefExpr] .<(_:_:)
|
|
# 10| getBase(): [TypeExpr] Int.Type
|
|
# 10| getTypeRepr(): [TypeRepr] Int
|
|
# 10| getArgument(0): [Argument] : i
|
|
# 10| getExpr(): [DeclRefExpr] i
|
|
# 10| getArgument(1): [Argument] : 12
|
|
# 10| getExpr(): [IntegerLiteralExpr] 12
|
|
# 10| getBody(): [BraceStmt] { ... }
|
|
# 11| getElement(0): [AssignExpr] ... = ...
|
|
# 11| getDest(): [DeclRefExpr] i
|
|
# 11| getSource(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 11| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 11| getBase(): [TypeExpr] Int.Type
|
|
# 11| getTypeRepr(): [TypeRepr] Int
|
|
# 11| getArgument(0): [Argument] : i
|
|
# 11| getExpr(): [DeclRefExpr] i
|
|
# 11| getArgument(1): [Argument] : 1
|
|
# 11| getExpr(): [IntegerLiteralExpr] 1
|
|
# 14| getElement(4): [AssignExpr] ... = ...
|
|
# 14| getDest(): [DeclRefExpr] i
|
|
# 14| getSource(): [IntegerLiteralExpr] 0
|
|
# 15| getElement(5): [RepeatWhileStmt] repeat { ... } while ...
|
|
# 17| getCondition(): [BinaryExpr] ... .<(_:_:) ...
|
|
# 17| getFunction(): [MethodRefExpr] .<(_:_:)
|
|
# 17| getBase(): [TypeExpr] Int.Type
|
|
# 17| getTypeRepr(): [TypeRepr] Int
|
|
# 17| getArgument(0): [Argument] : i
|
|
# 17| getExpr(): [DeclRefExpr] i
|
|
# 17| getArgument(1): [Argument] : 12
|
|
# 17| getExpr(): [IntegerLiteralExpr] 12
|
|
# 15| getBody(): [BraceStmt] { ... }
|
|
# 16| getElement(0): [AssignExpr] ... = ...
|
|
# 16| getDest(): [DeclRefExpr] i
|
|
# 16| getSource(): [BinaryExpr] ... .+(_:_:) ...
|
|
# 16| getFunction(): [MethodRefExpr] .+(_:_:)
|
|
# 16| getBase(): [TypeExpr] Int.Type
|
|
# 16| getTypeRepr(): [TypeRepr] Int
|
|
# 16| getArgument(0): [Argument] : i
|
|
# 16| getExpr(): [DeclRefExpr] i
|
|
# 16| getArgument(1): [Argument] : 1
|
|
# 16| getExpr(): [IntegerLiteralExpr] 1
|
|
# 19| getElement(6): [DoCatchStmt] do { ... } catch { ... }
|
|
# 19| getBody(): [BraceStmt] { ... }
|
|
# 20| getElement(0): [TryExpr] try ...
|
|
# 20| getSubExpr(): [CallExpr] call to failure(_:)
|
|
# 20| getFunction(): [DeclRefExpr] failure(_:)
|
|
# 20| getArgument(0): [Argument] : 11
|
|
# 20| getExpr(): [IntegerLiteralExpr] 11
|
|
# 21| getCatch(0): [CaseStmt] case ...
|
|
# 21| getBody(): [BraceStmt] { ... }
|
|
# 22| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 22| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 22| getArgument(0): [Argument] : [...]
|
|
# 22| getExpr(): [VarargExpansionExpr] [...]
|
|
# 22| getSubExpr(): [ArrayExpr] [...]
|
|
# 22| getElement(0): [StringLiteralExpr] error
|
|
# 22| getArgument(1): [Argument] separator: default separator
|
|
# 22| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 22| getArgument(2): [Argument] terminator: default terminator
|
|
# 22| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 21| getLabel(0): [CaseLabelItem] let ...
|
|
# 21| getPattern(): [BindingPattern] let ...
|
|
# 21| getSubPattern(): [NamedPattern] error
|
|
# 25| getElement(7): [DoCatchStmt] do { ... } catch { ... }
|
|
# 25| getBody(): [BraceStmt] { ... }
|
|
# 26| getElement(0): [TryExpr] try ...
|
|
# 26| getSubExpr(): [CallExpr] call to failure(_:)
|
|
# 26| getFunction(): [DeclRefExpr] failure(_:)
|
|
# 26| getArgument(0): [Argument] : 11
|
|
# 26| getExpr(): [IntegerLiteralExpr] 11
|
|
# 27| getCatch(0): [CaseStmt] case ...
|
|
# 27| getBody(): [BraceStmt] { ... }
|
|
# 28| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 28| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 28| getArgument(0): [Argument] : [...]
|
|
# 28| getExpr(): [VarargExpansionExpr] [...]
|
|
# 28| getSubExpr(): [ArrayExpr] [...]
|
|
# 28| getElement(0): [StringLiteralExpr] AnError.failed
|
|
# 28| getArgument(1): [Argument] separator: default separator
|
|
# 28| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 28| getArgument(2): [Argument] terminator: default terminator
|
|
# 28| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 27| getLabel(0): [CaseLabelItem] ... is ...
|
|
# 27| getPattern(): [IsPattern] ... is ...
|
|
# 27| getSubPattern(): [EnumElementPattern] .failed
|
|
# 29| getCatch(1): [CaseStmt] case ...
|
|
# 29| getBody(): [BraceStmt] { ... }
|
|
# 30| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 30| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 30| getArgument(0): [Argument] : [...]
|
|
# 30| getExpr(): [VarargExpansionExpr] [...]
|
|
# 30| getSubExpr(): [ArrayExpr] [...]
|
|
# 30| getElement(0): [StringLiteralExpr] error
|
|
# 30| getArgument(1): [Argument] separator: default separator
|
|
# 30| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 30| getArgument(2): [Argument] terminator: default terminator
|
|
# 30| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 29| getLabel(0): [CaseLabelItem] let ...
|
|
# 29| getPattern(): [BindingPattern] let ...
|
|
# 29| getSubPattern(): [NamedPattern] error
|
|
# 2| [ConcreteVarDecl] i
|
|
# 21| [ConcreteVarDecl] error
|
|
# 29| [ConcreteVarDecl] error
|
|
# 34| [EnumDecl] AnError
|
|
# 35| getMember(0): [EnumCaseDecl] case ...
|
|
# 35| getMember(1): [EnumElementDecl] failed
|
|
# 38| [ConcreteFuncDecl] failure(_:)
|
|
# 38| getParam(0): [ParamDecl] x
|
|
# 38| getBody(): [BraceStmt] { ... }
|
|
# 39| getElement(0): [GuardStmt] guard ... else { ... }
|
|
# 39| getCondition(): [StmtCondition] StmtCondition
|
|
# 39| getElement(0): [ConditionElement] ... .!=(_:_:) ...
|
|
# 39| getBoolean(): [BinaryExpr] ... .!=(_:_:) ...
|
|
# 39| getFunction(): [MethodRefExpr] .!=(_:_:)
|
|
# 39| getBase(): [TypeExpr] Int.Type
|
|
# 39| getTypeRepr(): [TypeRepr] Int
|
|
# 39| getArgument(0): [Argument] : x
|
|
# 39| getExpr(): [DeclRefExpr] x
|
|
# 39| getArgument(1): [Argument] : 0
|
|
# 39| getExpr(): [IntegerLiteralExpr] 0
|
|
# 39| getBody(): [BraceStmt] { ... }
|
|
# 40| getElement(0): [ThrowStmt] throw ...
|
|
# 40| getSubExpr(): [MethodRefExpr] .failed
|
|
# 40| getBase(): [TypeExpr] AnError.Type
|
|
# 40| getTypeRepr(): [TypeRepr] AnError
|
|
# 44| [TopLevelCodeDecl] { ... }
|
|
# 44| getBody(): [BraceStmt] { ... }
|
|
# 44| getElement(0): [DeferStmt] defer { ... }
|
|
# 44| getBody(): [BraceStmt] { ... }
|
|
# 45| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 45| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 45| getArgument(0): [Argument] : [...]
|
|
# 45| getExpr(): [VarargExpansionExpr] [...]
|
|
# 45| getSubExpr(): [ArrayExpr] [...]
|
|
# 45| getElement(0): [StringLiteralExpr] done
|
|
# 45| getArgument(1): [Argument] separator: default separator
|
|
# 45| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 45| getArgument(2): [Argument] terminator: default terminator
|
|
# 45| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 48| [TopLevelCodeDecl] { ... }
|
|
# 48| getBody(): [BraceStmt] { ... }
|
|
# 48| getElement(0): [DoStmt] do { ... }
|
|
# 48| getBody(): [BraceStmt] { ... }
|
|
# 49| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 49| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 49| getArgument(0): [Argument] : [...]
|
|
# 49| getExpr(): [VarargExpansionExpr] [...]
|
|
# 49| getSubExpr(): [ArrayExpr] [...]
|
|
# 49| getElement(0): [StringLiteralExpr] doing
|
|
# 49| getArgument(1): [Argument] separator: default separator
|
|
# 49| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 49| getArgument(2): [Argument] terminator: default terminator
|
|
# 49| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 52| [TopLevelCodeDecl] { ... }
|
|
# 52| getBody(): [BraceStmt] { ... }
|
|
# 52| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 52| getInit(0): [IntegerLiteralExpr] 42
|
|
# 52| getPattern(0): [NamedPattern] index
|
|
# 52| [ConcreteVarDecl] index
|
|
# 53| [TopLevelCodeDecl] { ... }
|
|
# 53| getBody(): [BraceStmt] { ... }
|
|
# 53| getElement(0): [SwitchStmt] switch index { ... }
|
|
# 53| getExpr(): [DeclRefExpr] index
|
|
# 54| getCase(0): [CaseStmt] case ...
|
|
# 55| getBody(): [BraceStmt] { ... }
|
|
# 55| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 55| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 55| getArgument(0): [Argument] : [...]
|
|
# 55| getExpr(): [VarargExpansionExpr] [...]
|
|
# 55| getSubExpr(): [ArrayExpr] [...]
|
|
# 55| getElement(0): [StringLiteralExpr] 1
|
|
# 55| getArgument(1): [Argument] separator: default separator
|
|
# 55| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 55| getArgument(2): [Argument] terminator: default terminator
|
|
# 55| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 56| getElement(1): [FallthroughStmt] fallthrough
|
|
# 54| getLabel(0): [CaseLabelItem] =~ ...
|
|
# 54| getPattern(): [ExprPattern] =~ ...
|
|
# 54| getSubExpr(): [IntegerLiteralExpr] 1
|
|
# 57| getCase(1): [CaseStmt] case ...
|
|
# 58| getBody(): [BraceStmt] { ... }
|
|
# 58| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 58| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 58| getArgument(0): [Argument] : [...]
|
|
# 58| getExpr(): [VarargExpansionExpr] [...]
|
|
# 58| getSubExpr(): [ArrayExpr] [...]
|
|
# 58| getElement(0): [StringLiteralExpr] 5, 10
|
|
# 58| getArgument(1): [Argument] separator: default separator
|
|
# 58| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 58| getArgument(2): [Argument] terminator: default terminator
|
|
# 58| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 59| getElement(1): [BreakStmt] break
|
|
# 57| getLabel(0): [CaseLabelItem] =~ ...
|
|
# 57| getPattern(): [ExprPattern] =~ ...
|
|
# 57| getSubExpr(): [IntegerLiteralExpr] 5
|
|
# 57| getLabel(1): [CaseLabelItem] =~ ...
|
|
# 57| getPattern(): [ExprPattern] =~ ...
|
|
# 57| getSubExpr(): [IntegerLiteralExpr] 10
|
|
# 60| getCase(2): [CaseStmt] case ...
|
|
# 61| getBody(): [BraceStmt] { ... }
|
|
# 61| getElement(0): [CallExpr] call to print(_:separator:terminator:)
|
|
# 61| getFunction(): [DeclRefExpr] print(_:separator:terminator:)
|
|
# 61| getArgument(0): [Argument] : [...]
|
|
# 61| getExpr(): [VarargExpansionExpr] [...]
|
|
# 61| getSubExpr(): [ArrayExpr] [...]
|
|
# 61| getElement(0): [StringLiteralExpr] default
|
|
# 61| getArgument(1): [Argument] separator: default separator
|
|
# 61| getExpr(): [DefaultArgumentExpr] default separator
|
|
# 61| getArgument(2): [Argument] terminator: default terminator
|
|
# 61| getExpr(): [DefaultArgumentExpr] default terminator
|
|
# 60| getLabel(0): [CaseLabelItem] _
|
|
# 60| getPattern(): [AnyPattern] _
|
|
# 64| [TopLevelCodeDecl] { ... }
|
|
# 64| getBody(): [BraceStmt] { ... }
|
|
# 64| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 64| getInit(0): [IntegerLiteralExpr] 4
|
|
# 64| getPattern(0): [TypedPattern] ... as ...
|
|
# 64| getSubPattern(): [NamedPattern] x
|
|
# 64| getTypeRepr(): [TypeRepr] Int?
|
|
# 64| [ConcreteVarDecl] x
|
|
# 65| [TopLevelCodeDecl] { ... }
|
|
# 65| getBody(): [BraceStmt] { ... }
|
|
# 65| getElement(0): [IfStmt] if ... then { ... }
|
|
# 65| getCondition(): [StmtCondition] StmtCondition
|
|
# 65| getElement(0): [ConditionElement] let ... = ...
|
|
# 65| getPattern(): [BindingPattern] let ...
|
|
# 65| getSubPattern(): [OptionalSomePattern] let ...?
|
|
# 65| getSubPattern(): [NamedPattern] xx
|
|
# 65| getInitializer(): [DeclRefExpr] x
|
|
# 65| getThen(): [BraceStmt] { ... }
|
|
# 67| [TopLevelCodeDecl] { ... }
|
|
# 67| getBody(): [BraceStmt] { ... }
|
|
# 67| getElement(0): [IfStmt] if ... then { ... }
|
|
# 67| getCondition(): [StmtCondition] StmtCondition
|
|
# 67| getElement(0): [ConditionElement] .some(...) = ...
|
|
# 67| getPattern(): [EnumElementPattern] .some(...)
|
|
# 67| getSubPattern(): [AnyPattern] _
|
|
# 67| getInitializer(): [DeclRefExpr] x
|
|
# 67| getThen(): [BraceStmt] { ... }
|
|
# 70| [TopLevelCodeDecl] { ... }
|
|
# 70| getBody(): [BraceStmt] { ... }
|
|
# 70| getElement(0): [PatternBindingDecl] var ... = ...
|
|
# 70| getInit(0): [ArrayExpr] [...]
|
|
# 70| getElement(0): [IntegerLiteralExpr] 1
|
|
# 70| getElement(1): [IntegerLiteralExpr] 2
|
|
# 70| getElement(2): [IntegerLiteralExpr] 3
|
|
# 70| getPattern(0): [NamedPattern] numbers
|
|
# 70| [ConcreteVarDecl] numbers
|
|
# 71| [TopLevelCodeDecl] { ... }
|
|
# 71| getBody(): [BraceStmt] { ... }
|
|
# 71| getElement(0): [ForEachStmt] for ... in ... where ... { ... }
|
|
# 71| getPattern(): [NamedPattern] number
|
|
# 71| getSequence(): [DeclRefExpr] numbers
|
|
# 71| getWhere(): [BinaryExpr] ... .==(_:_:) ...
|
|
# 71| getFunction(): [MethodRefExpr] .==(_:_:)
|
|
# 71| getBase(): [TypeExpr] Int.Type
|
|
# 71| getTypeRepr(): [TypeRepr] Int
|
|
# 71| getArgument(0): [Argument] : ... .%(_:_:) ...
|
|
# 71| getExpr(): [BinaryExpr] ... .%(_:_:) ...
|
|
# 71| getFunction(): [MethodRefExpr] .%(_:_:)
|
|
# 71| getBase(): [TypeExpr] Int.Type
|
|
# 71| getTypeRepr(): [TypeRepr] Int
|
|
# 71| getArgument(0): [Argument] : number
|
|
# 71| getExpr(): [DeclRefExpr] number
|
|
# 71| getArgument(1): [Argument] : 2
|
|
# 71| getExpr(): [IntegerLiteralExpr] 2
|
|
# 71| getArgument(1): [Argument] : 0
|
|
# 71| getExpr(): [IntegerLiteralExpr] 0
|
|
# 71| getBody(): [BraceStmt] { ... }
|
|
# 71| [ConcreteVarDecl] number
|
|
# 74| [StructDecl] HasModifyAccessorDecl
|
|
# 75| getMember(0): [PatternBindingDecl] var ... = ...
|
|
# 75| getPattern(0): [TypedPattern] ... as ...
|
|
# 75| getSubPattern(): [NamedPattern] x
|
|
# 75| getTypeRepr(): [TypeRepr] Int
|
|
# 75| getMember(1): [ConcreteVarDecl] x
|
|
# 75| getAccessorDecl(0): [AccessorDecl] get
|
|
# 75| getSelfParam(): [ParamDecl] self
|
|
# 75| getBody(): [BraceStmt] { ... }
|
|
# 75| getAccessorDecl(1): [AccessorDecl] set
|
|
# 75| getSelfParam(): [ParamDecl] self
|
|
# 75| getParam(0): [ParamDecl] value
|
|
# 75| getBody(): [BraceStmt] { ... }
|
|
# 75| getAccessorDecl(2): [AccessorDecl] (unnamed function decl)
|
|
# 75| getSelfParam(): [ParamDecl] self
|
|
# 75| getBody(): [BraceStmt] { ... }
|
|
# 75| getElement(0): [YieldStmt] yield ...
|
|
# 76| getMember(2): [PatternBindingDecl] var ... = ...
|
|
# 76| getPattern(0): [TypedPattern] ... as ...
|
|
# 76| getSubPattern(): [NamedPattern] hasModify
|
|
# 76| getTypeRepr(): [TypeRepr] Int
|
|
# 76| getMember(3): [ConcreteVarDecl] hasModify
|
|
# 77| getAccessorDecl(0): [AccessorDecl] (unnamed function decl)
|
|
# 77| getSelfParam(): [ParamDecl] self
|
|
# 77| getBody(): [BraceStmt] { ... }
|
|
# 78| getElement(0): [YieldStmt] yield ...
|
|
# 78| getResult(0): [InOutExpr] &...
|
|
# 78| getSubExpr(): [MemberRefExpr] .x
|
|
# 78| getBase(): [DeclRefExpr] self
|
|
# 81| getAccessorDecl(1): [AccessorDecl] get
|
|
# 81| getSelfParam(): [ParamDecl] self
|
|
# 81| getBody(): [BraceStmt] { ... }
|
|
# 82| getElement(0): [ReturnStmt] return ...
|
|
# 82| getResult(): [IntegerLiteralExpr] 0
|
|
# 76| getAccessorDecl(2): [AccessorDecl] set
|
|
# 76| getSelfParam(): [ParamDecl] self
|
|
# 76| getParam(0): [ParamDecl] value
|
|
# 76| getBody(): [BraceStmt] { ... }
|
|
# 74| getMember(4): [ConstructorDecl] init(x:)
|
|
# 74| getSelfParam(): [ParamDecl] self
|
|
# 74| getParam(0): [ParamDecl] x
|