@@ -7148,3 +7148,95 @@ statements.swift:
7148
7148
# 92| getExpr(): [DefaultArgumentExpr] default separator
7149
7149
# 92| getArgument(2): [Argument] terminator: default terminator
7150
7150
# 92| getExpr(): [DefaultArgumentExpr] default terminator
7151
+ # 95| [Comment] // ---
7152
+ # 95|
7153
+ # 97| [ProtocolDecl] MyProtocol
7154
+ #-----| getGenericTypeParam(0): [GenericTypeParamDecl] Self
7155
+ # 98| getMember(0): [NamedFunction] source()
7156
+ # 98| InterfaceType = <Self where Self : MyProtocol> (Self) -> () -> Int
7157
+ # 98| getSelfParam(): [ParamDecl] self
7158
+ # 98| Type = Self
7159
+ # 101| [ClassDecl] MyProcotolImpl
7160
+ # 102| getMember(0): [NamedFunction] source()
7161
+ # 102| InterfaceType = (MyProcotolImpl) -> () -> Int
7162
+ # 102| getSelfParam(): [ParamDecl] self
7163
+ # 102| Type = MyProcotolImpl
7164
+ # 102| getBody(): [BraceStmt] { ... }
7165
+ # 102| getElement(0): [ReturnStmt] return ...
7166
+ # 102| getResult(): [IntegerLiteralExpr] 0
7167
+ # 101| getMember(1): [Deinitializer] MyProcotolImpl.deinit()
7168
+ # 101| InterfaceType = (MyProcotolImpl) -> () -> ()
7169
+ # 101| getSelfParam(): [ParamDecl] self
7170
+ # 101| Type = MyProcotolImpl
7171
+ # 101| getBody(): [BraceStmt] { ... }
7172
+ # 101| getMember(2): [Initializer] MyProcotolImpl.init()
7173
+ # 101| InterfaceType = (MyProcotolImpl.Type) -> () -> MyProcotolImpl
7174
+ # 101| getSelfParam(): [ParamDecl] self
7175
+ # 101| Type = MyProcotolImpl
7176
+ # 101| getBody(): [BraceStmt] { ... }
7177
+ # 101| getElement(0): [ReturnStmt] return
7178
+ # 105| [NamedFunction] getMyProtocol()
7179
+ # 105| InterfaceType = () -> MyProtocol
7180
+ # 105| getBody(): [BraceStmt] { ... }
7181
+ # 105| getElement(0): [ReturnStmt] return ...
7182
+ # 105| getResult(): [CallExpr] call to MyProcotolImpl.init()
7183
+ # 105| getFunction(): [MethodLookupExpr] MyProcotolImpl.init()
7184
+ # 105| getBase(): [TypeExpr] MyProcotolImpl.Type
7185
+ # 105| getTypeRepr(): [TypeRepr] MyProcotolImpl
7186
+ # 105| getMethodRef(): [DeclRefExpr] MyProcotolImpl.init()
7187
+ # 105| getResult().getFullyConverted(): [ErasureExpr] (MyProtocol) ...
7188
+ # 106| [NamedFunction] getMyProtocolImpl()
7189
+ # 106| InterfaceType = () -> MyProcotolImpl
7190
+ # 106| getBody(): [BraceStmt] { ... }
7191
+ # 106| getElement(0): [ReturnStmt] return ...
7192
+ # 106| getResult(): [CallExpr] call to MyProcotolImpl.init()
7193
+ # 106| getFunction(): [MethodLookupExpr] MyProcotolImpl.init()
7194
+ # 106| getBase(): [TypeExpr] MyProcotolImpl.Type
7195
+ # 106| getTypeRepr(): [TypeRepr] MyProcotolImpl
7196
+ # 106| getMethodRef(): [DeclRefExpr] MyProcotolImpl.init()
7197
+ # 108| [NamedFunction] sink(arg:)
7198
+ # 108| InterfaceType = (Int) -> ()
7199
+ # 108| getParam(0): [ParamDecl] arg
7200
+ # 108| Type = Int
7201
+ # 108| getBody(): [BraceStmt] { ... }
7202
+ # 110| [NamedFunction] testOpenExistentialExpr(x:y:)
7203
+ # 110| InterfaceType = (MyProtocol, MyProcotolImpl) -> ()
7204
+ # 110| getParam(0): [ParamDecl] x
7205
+ # 110| Type = MyProtocol
7206
+ # 110| getParam(1): [ParamDecl] y
7207
+ # 110| Type = MyProcotolImpl
7208
+ # 110| getBody(): [BraceStmt] { ... }
7209
+ # 111| getElement(0): [CallExpr] call to sink(arg:)
7210
+ # 111| getFunction(): [DeclRefExpr] sink(arg:)
7211
+ # 111| getArgument(0): [Argument] arg: OpenExistentialExpr
7212
+ # 111| getExpr(): [OpenExistentialExpr] OpenExistentialExpr
7213
+ # 111| getSubExpr(): [CallExpr] call to source()
7214
+ # 111| getFunction(): [MethodLookupExpr] .source()
7215
+ # 111| getBase(): [OpaqueValueExpr] OpaqueValueExpr
7216
+ # 111| getMethodRef(): [DeclRefExpr] source()
7217
+ # 111| getExistential(): [DeclRefExpr] x
7218
+ # 112| getElement(1): [CallExpr] call to sink(arg:)
7219
+ # 112| getFunction(): [DeclRefExpr] sink(arg:)
7220
+ # 112| getArgument(0): [Argument] arg: call to source()
7221
+ # 112| getExpr(): [CallExpr] call to source()
7222
+ # 112| getFunction(): [MethodLookupExpr] .source()
7223
+ # 112| getBase(): [DeclRefExpr] y
7224
+ # 112| getMethodRef(): [DeclRefExpr] source()
7225
+ # 113| getElement(2): [CallExpr] call to sink(arg:)
7226
+ # 113| getFunction(): [DeclRefExpr] sink(arg:)
7227
+ # 113| getArgument(0): [Argument] arg: OpenExistentialExpr
7228
+ # 113| getExpr(): [OpenExistentialExpr] OpenExistentialExpr
7229
+ # 113| getSubExpr(): [CallExpr] call to source()
7230
+ # 113| getFunction(): [MethodLookupExpr] .source()
7231
+ # 113| getBase(): [OpaqueValueExpr] OpaqueValueExpr
7232
+ # 113| getMethodRef(): [DeclRefExpr] source()
7233
+ # 113| getExistential(): [CallExpr] call to getMyProtocol()
7234
+ # 113| getFunction(): [DeclRefExpr] getMyProtocol()
7235
+ # 114| getElement(3): [CallExpr] call to sink(arg:)
7236
+ # 114| getFunction(): [DeclRefExpr] sink(arg:)
7237
+ # 114| getArgument(0): [Argument] arg: call to source()
7238
+ # 114| getExpr(): [CallExpr] call to source()
7239
+ # 114| getFunction(): [MethodLookupExpr] .source()
7240
+ # 114| getBase(): [CallExpr] call to getMyProtocolImpl()
7241
+ # 114| getFunction(): [DeclRefExpr] getMyProtocolImpl()
7242
+ # 114| getMethodRef(): [DeclRefExpr] source()
0 commit comments