|
| 1 | +v5.8.swift: |
| 2 | +# 1| [Comment] // https://github.com/apple/swift/blob/main/CHANGELOG.md#swift-58 |
| 3 | +# 1| |
| 4 | +# 4| [StructDecl] Temperature |
| 5 | +# 5| getMember(0): [PatternBindingDecl] var ... = ... |
| 6 | +# 5| getPattern(0): [TypedPattern] ... as ... |
| 7 | +# 5| getSubPattern(): [NamedPattern] degreesCelsius |
| 8 | +# 5| getTypeRepr(): [TypeRepr] Double |
| 9 | +# 5| getMember(1): [ConcreteVarDecl] degreesCelsius |
| 10 | +# 5| Type = Double |
| 11 | +# 5| getAccessorDecl(0): [AccessorDecl] get |
| 12 | +# 5| InterfaceType = (Temperature) -> () -> Double |
| 13 | +# 5| getSelfParam(): [ParamDecl] self |
| 14 | +# 5| Type = Temperature |
| 15 | +# 5| getBody(): [BraceStmt] { ... } |
| 16 | +#-----| getElement(0): [ReturnStmt] return ... |
| 17 | +#-----| getResult(): [MemberRefExpr] .degreesCelsius |
| 18 | +#-----| getBase(): [DeclRefExpr] self |
| 19 | +# 5| getAccessorDecl(1): [AccessorDecl] set |
| 20 | +# 5| InterfaceType = (inout Temperature) -> (Double) -> () |
| 21 | +# 5| getSelfParam(): [ParamDecl] self |
| 22 | +# 5| Type = Temperature |
| 23 | +# 5| getParam(0): [ParamDecl] value |
| 24 | +# 5| Type = Double |
| 25 | +# 5| getBody(): [BraceStmt] { ... } |
| 26 | +#-----| getElement(0): [AssignExpr] ... = ... |
| 27 | +#-----| getDest(): [MemberRefExpr] .degreesCelsius |
| 28 | +#-----| getBase(): [DeclRefExpr] self |
| 29 | +#-----| getSource(): [DeclRefExpr] value |
| 30 | +# 5| getAccessorDecl(2): [AccessorDecl] _modify |
| 31 | +# 5| InterfaceType = (inout Temperature) -> () -> () |
| 32 | +# 5| getSelfParam(): [ParamDecl] self |
| 33 | +# 5| Type = Temperature |
| 34 | +# 5| getBody(): [BraceStmt] { ... } |
| 35 | +# 5| getElement(0): [YieldStmt] yield ... |
| 36 | +#-----| getResult(0): [InOutExpr] &... |
| 37 | +#-----| getSubExpr(): [MemberRefExpr] .degreesCelsius |
| 38 | +#-----| getBase(): [DeclRefExpr] self |
| 39 | +# 4| getMember(2): [ConstructorDecl] Temperature.init(degreesCelsius:) |
| 40 | +# 4| InterfaceType = (Temperature.Type) -> (Double) -> Temperature |
| 41 | +# 4| getSelfParam(): [ParamDecl] self |
| 42 | +# 4| Type = Temperature |
| 43 | +# 4| getParam(0): [ParamDecl] degreesCelsius |
| 44 | +# 4| Type = Double |
| 45 | +# 7| [Comment] // ... |
| 46 | +# 7| |
| 47 | +# 10| [ExtensionDecl] extension of Temperature |
| 48 | +# 13| getMember(0): [PatternBindingDecl] var ... = ... |
| 49 | +# 13| getPattern(0): [TypedPattern] ... as ... |
| 50 | +# 13| getSubPattern(): [NamedPattern] degreesFahrenheit |
| 51 | +# 13| getTypeRepr(): [TypeRepr] Double |
| 52 | +# 13| getMember(1): [ConcreteVarDecl] degreesFahrenheit |
| 53 | +# 13| Type = Double |
| 54 | +# 13| getAccessorDecl(0): [AccessorDecl] get |
| 55 | +# 13| InterfaceType = (Temperature) -> () -> Double |
| 56 | +# 13| getSelfParam(): [ParamDecl] self |
| 57 | +# 13| Type = Temperature |
| 58 | +# 13| getBody(): [BraceStmt] { ... } |
| 59 | +# 14| getElement(0): [ReturnStmt] return ... |
| 60 | +# 14| getResult(): [BinaryExpr] ... .+(_:_:) ... |
| 61 | +# 14| getFunction(): [MethodLookupExpr] .+(_:_:) |
| 62 | +# 14| getBase(): [TypeExpr] Double.Type |
| 63 | +# 14| getTypeRepr(): [TypeRepr] Double |
| 64 | +# 14| getMethodRef(): [DeclRefExpr] +(_:_:) |
| 65 | +# 14| getArgument(0): [Argument] : ... ./(_:_:) ... |
| 66 | +# 14| getExpr(): [BinaryExpr] ... ./(_:_:) ... |
| 67 | +# 14| getFunction(): [MethodLookupExpr] ./(_:_:) |
| 68 | +# 14| getBase(): [TypeExpr] Double.Type |
| 69 | +# 14| getTypeRepr(): [TypeRepr] Double |
| 70 | +# 14| getMethodRef(): [DeclRefExpr] /(_:_:) |
| 71 | +# 14| getArgument(0): [Argument] : ... .*(_:_:) ... |
| 72 | +# 14| getExpr(): [BinaryExpr] ... .*(_:_:) ... |
| 73 | +# 14| getFunction(): [MethodLookupExpr] .*(_:_:) |
| 74 | +# 14| getBase(): [TypeExpr] Double.Type |
| 75 | +# 14| getTypeRepr(): [TypeRepr] Double |
| 76 | +# 14| getMethodRef(): [DeclRefExpr] *(_:_:) |
| 77 | +# 14| getArgument(0): [Argument] : .degreesCelsius |
| 78 | +# 14| getExpr(): [MemberRefExpr] .degreesCelsius |
| 79 | +# 14| getBase(): [DeclRefExpr] self |
| 80 | +# 14| getArgument(1): [Argument] : 9 |
| 81 | +# 14| getExpr(): [IntegerLiteralExpr] 9 |
| 82 | +# 14| getArgument(1): [Argument] : 5 |
| 83 | +# 14| getExpr(): [IntegerLiteralExpr] 5 |
| 84 | +# 14| getExpr().getFullyConverted(): [ParenExpr] (...) |
| 85 | +# 14| getArgument(1): [Argument] : 32 |
| 86 | +# 14| getExpr(): [IntegerLiteralExpr] 32 |
| 87 | +# 18| [ConcreteFuncDecl] collectionDowncast(_:) |
| 88 | +# 18| InterfaceType = ([Any]) -> () |
| 89 | +# 18| getParam(0): [ParamDecl] arr |
| 90 | +# 18| Type = [Any] |
| 91 | +# 18| getBody(): [BraceStmt] { ... } |
| 92 | +# 19| getElement(0): [SwitchStmt] switch arr { ... } |
| 93 | +# 19| getExpr(): [DeclRefExpr] arr |
| 94 | +# 20| getCase(0): [CaseStmt] case ... |
| 95 | +# 21| getBody(): [BraceStmt] { ... } |
| 96 | +# 21| getElement(0): [IntegerLiteralExpr] 0 |
| 97 | +# 20| getLabel(0): [CaseLabelItem] ... is ... |
| 98 | +# 20| getPattern(): [IsPattern] ... is ... |
| 99 | +# 20| getCastTypeRepr(): [TypeRepr] [Int] |
| 100 | +# 20| getSubPattern(): [NamedPattern] ints |
| 101 | +# 20| getPattern().getFullyUnresolved(): [BindingPattern] let ... |
| 102 | +# 22| getCase(1): [CaseStmt] case ... |
| 103 | +# 23| getBody(): [BraceStmt] { ... } |
| 104 | +# 23| getElement(0): [IntegerLiteralExpr] 1 |
| 105 | +# 22| getLabel(0): [CaseLabelItem] ... is ... |
| 106 | +# 22| getPattern(): [IsPattern] ... is ... |
| 107 | +# 22| getCastTypeRepr(): [TypeRepr] [Bool] |
| 108 | +# 24| getCase(2): [CaseStmt] case ... |
| 109 | +# 25| getBody(): [BraceStmt] { ... } |
| 110 | +# 25| getElement(0): [IntegerLiteralExpr] 2 |
| 111 | +# 24| getLabel(0): [CaseLabelItem] _ |
| 112 | +# 24| getPattern(): [AnyPattern] _ |
| 113 | +# 20| [ConcreteVarDecl] ints |
| 114 | +# 20| Type = [Int] |
| 115 | +# 29| [StructDecl] Button |
| 116 | +# 30| getMember(0): [PatternBindingDecl] var ... = ... |
| 117 | +#-----| getInit(0): [NilLiteralExpr] nil |
| 118 | +# 30| getPattern(0): [TypedPattern] ... as ... |
| 119 | +# 30| getSubPattern(): [NamedPattern] tapHandler |
| 120 | +# 30| getTypeRepr(): [TypeRepr] (() -> ())? |
| 121 | +# 30| getMember(1): [ConcreteVarDecl] tapHandler |
| 122 | +# 30| Type = (() -> ())? |
| 123 | +# 30| getAccessorDecl(0): [AccessorDecl] get |
| 124 | +# 30| InterfaceType = (Button) -> () -> (() -> ())? |
| 125 | +# 30| getSelfParam(): [ParamDecl] self |
| 126 | +# 30| Type = Button |
| 127 | +# 30| getBody(): [BraceStmt] { ... } |
| 128 | +#-----| getElement(0): [ReturnStmt] return ... |
| 129 | +#-----| getResult(): [MemberRefExpr] .tapHandler |
| 130 | +#-----| getBase(): [DeclRefExpr] self |
| 131 | +# 30| getAccessorDecl(1): [AccessorDecl] set |
| 132 | +# 30| InterfaceType = (inout Button) -> ((() -> ())?) -> () |
| 133 | +# 30| getSelfParam(): [ParamDecl] self |
| 134 | +# 30| Type = Button |
| 135 | +# 30| getParam(0): [ParamDecl] value |
| 136 | +# 30| Type = (() -> ())? |
| 137 | +# 30| getBody(): [BraceStmt] { ... } |
| 138 | +#-----| getElement(0): [AssignExpr] ... = ... |
| 139 | +#-----| getDest(): [MemberRefExpr] .tapHandler |
| 140 | +#-----| getBase(): [DeclRefExpr] self |
| 141 | +#-----| getSource(): [DeclRefExpr] value |
| 142 | +# 30| getAccessorDecl(2): [AccessorDecl] _modify |
| 143 | +# 30| InterfaceType = (inout Button) -> () -> () |
| 144 | +# 30| getSelfParam(): [ParamDecl] self |
| 145 | +# 30| Type = Button |
| 146 | +# 30| getBody(): [BraceStmt] { ... } |
| 147 | +# 30| getElement(0): [YieldStmt] yield ... |
| 148 | +#-----| getResult(0): [InOutExpr] &... |
| 149 | +#-----| getSubExpr(): [MemberRefExpr] .tapHandler |
| 150 | +#-----| getBase(): [DeclRefExpr] self |
| 151 | +# 29| getMember(2): [ConstructorDecl] Button.init() |
| 152 | +# 29| InterfaceType = (Button.Type) -> () -> Button |
| 153 | +# 29| getSelfParam(): [ParamDecl] self |
| 154 | +# 29| Type = Button |
| 155 | +# 29| getBody(): [BraceStmt] { ... } |
| 156 | +# 29| getElement(0): [ReturnStmt] return |
| 157 | +# 29| getMember(3): [ConstructorDecl] Button.init(tapHandler:) |
| 158 | +# 29| InterfaceType = (Button.Type) -> ((() -> ())?) -> Button |
| 159 | +# 29| getSelfParam(): [ParamDecl] self |
| 160 | +# 29| Type = Button |
| 161 | +# 29| getParam(0): [ParamDecl] tapHandler |
| 162 | +# 29| Type = (() -> ())? |
| 163 | +# 33| [ClassDecl] ViewController |
| 164 | +# 34| getMember(0): [PatternBindingDecl] var ... = ... |
| 165 | +# 34| getInit(0): [CallExpr] call to Button.init() |
| 166 | +# 34| getFunction(): [MethodLookupExpr] Button.init() |
| 167 | +# 34| getBase(): [TypeExpr] Button.Type |
| 168 | +# 34| getTypeRepr(): [TypeRepr] Button |
| 169 | +# 34| getMethodRef(): [DeclRefExpr] Button.init() |
| 170 | +# 34| getPattern(0): [TypedPattern] ... as ... |
| 171 | +# 34| getSubPattern(): [NamedPattern] button |
| 172 | +# 34| getTypeRepr(): [TypeRepr] Button |
| 173 | +# 34| getMember(1): [ConcreteVarDecl] button |
| 174 | +# 34| Type = Button |
| 175 | +# 34| getAccessorDecl(0): [AccessorDecl] get |
| 176 | +# 34| InterfaceType = (ViewController) -> () -> Button |
| 177 | +# 34| getSelfParam(): [ParamDecl] self |
| 178 | +# 34| Type = ViewController |
| 179 | +# 34| getBody(): [BraceStmt] { ... } |
| 180 | +#-----| getElement(0): [ReturnStmt] return ... |
| 181 | +#-----| getResult(): [MemberRefExpr] .button |
| 182 | +#-----| getBase(): [DeclRefExpr] self |
| 183 | +# 34| getAccessorDecl(1): [AccessorDecl] set |
| 184 | +# 34| InterfaceType = (ViewController) -> (Button) -> () |
| 185 | +# 34| getSelfParam(): [ParamDecl] self |
| 186 | +# 34| Type = ViewController |
| 187 | +# 34| getParam(0): [ParamDecl] value |
| 188 | +# 34| Type = Button |
| 189 | +# 34| getBody(): [BraceStmt] { ... } |
| 190 | +#-----| getElement(0): [AssignExpr] ... = ... |
| 191 | +#-----| getDest(): [MemberRefExpr] .button |
| 192 | +#-----| getBase(): [DeclRefExpr] self |
| 193 | +#-----| getSource(): [DeclRefExpr] value |
| 194 | +# 34| getAccessorDecl(2): [AccessorDecl] _modify |
| 195 | +# 34| InterfaceType = (ViewController) -> () -> () |
| 196 | +# 34| getSelfParam(): [ParamDecl] self |
| 197 | +# 34| Type = ViewController |
| 198 | +# 34| getBody(): [BraceStmt] { ... } |
| 199 | +# 34| getElement(0): [YieldStmt] yield ... |
| 200 | +#-----| getResult(0): [InOutExpr] &... |
| 201 | +#-----| getSubExpr(): [MemberRefExpr] .button |
| 202 | +#-----| getBase(): [DeclRefExpr] self |
| 203 | +# 36| getMember(2): [ConcreteFuncDecl] setup() |
| 204 | +# 36| InterfaceType = (ViewController) -> () -> () |
| 205 | +# 36| getSelfParam(): [ParamDecl] self |
| 206 | +# 36| Type = ViewController |
| 207 | +# 36| getBody(): [BraceStmt] { ... } |
| 208 | +# 37| getElement(0): [AssignExpr] ... = ... |
| 209 | +# 37| getDest(): [MemberRefExpr] .tapHandler |
| 210 | +# 37| getBase(): [MemberRefExpr] .button |
| 211 | +# 37| getBase(): [DeclRefExpr] self |
| 212 | +# 37| getSource(): [CaptureListExpr] { ... } |
| 213 | +# 37| getBindingDecl(0): [PatternBindingDecl] var ... = ... |
| 214 | +# 37| getInit(0): [DeclRefExpr] self |
| 215 | +# 37| getInit(0).getFullyConverted(): [InjectIntoOptionalExpr] (ViewController?) ... |
| 216 | +# 37| getPattern(0): [NamedPattern] self |
| 217 | +# 37| getClosureBody(): [ClosureExpr] { ... } |
| 218 | +# 37| getBody(): [BraceStmt] { ... } |
| 219 | +# 38| getElement(0): [GuardStmt] guard ... else { ... } |
| 220 | +# 38| getCondition(): [StmtCondition] StmtCondition |
| 221 | +# 38| getElement(0): [ConditionElement] let ...? = ... |
| 222 | +# 38| getPattern(): [OptionalSomePattern] let ...? |
| 223 | +# 38| getSubPattern(): [NamedPattern] self |
| 224 | +# 38| getSubPattern().getFullyUnresolved(): [BindingPattern] let ... |
| 225 | +# 38| getInitializer(): [DeclRefExpr] self |
| 226 | +# 38| getInitializer().getFullyConverted(): [LoadExpr] (ViewController?) ... |
| 227 | +# 38| getBody(): [BraceStmt] { ... } |
| 228 | +# 38| getElement(0): [ReturnStmt] return |
| 229 | +# 39| getElement(1): [CallExpr] call to dismiss() |
| 230 | +# 39| getFunction(): [MethodLookupExpr] .dismiss() |
| 231 | +# 39| getBase(): [DeclRefExpr] self |
| 232 | +# 39| getMethodRef(): [DeclRefExpr] dismiss() |
| 233 | +# 38| getCapture(0): [CapturedDecl] self |
| 234 | +# 37| getSource().getFullyConverted(): [InjectIntoOptionalExpr] ((() -> ())?) ... |
| 235 | +# 43| getMember(3): [ConcreteFuncDecl] dismiss() |
| 236 | +# 43| InterfaceType = (ViewController) -> () -> () |
| 237 | +# 43| getSelfParam(): [ParamDecl] self |
| 238 | +# 43| Type = ViewController |
| 239 | +# 43| getBody(): [BraceStmt] { ... } |
| 240 | +# 33| getMember(4): [DestructorDecl] ViewController.deinit() |
| 241 | +# 33| InterfaceType = (ViewController) -> () -> () |
| 242 | +# 33| getSelfParam(): [ParamDecl] self |
| 243 | +# 33| Type = ViewController |
| 244 | +# 33| getBody(): [BraceStmt] { ... } |
| 245 | +# 33| getMember(5): [ConstructorDecl] ViewController.init() |
| 246 | +# 33| InterfaceType = (ViewController.Type) -> () -> ViewController |
| 247 | +# 33| getSelfParam(): [ParamDecl] self |
| 248 | +# 33| Type = ViewController |
| 249 | +# 33| getBody(): [BraceStmt] { ... } |
| 250 | +# 33| getElement(0): [ReturnStmt] return |
| 251 | +# 37| [ConcreteVarDecl] self |
| 252 | +# 37| Type = ViewController? |
| 253 | +# 38| [ConcreteVarDecl] self |
| 254 | +# 38| Type = ViewController |
| 255 | +# 39| [Comment] // refers to `self.dismiss()` |
| 256 | +# 39| |
0 commit comments