mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Preamble macros are *not* part of the revised SE-0415, so leave them experimental. Tracked by rdar://119687390.
37 lines
1.7 KiB
Swift
37 lines
1.7 KiB
Swift
// RUN: %batch-code-completion
|
|
|
|
@freestanding(#^FREESTANDING_ROLE^#)
|
|
macro FreestandingMacro
|
|
|
|
// FREESTANDING_ROLE: Begin completions, 2 items
|
|
// FREESTANDING_ROLE-DAG: Keyword/None: expression; name=expression
|
|
// FREESTANDING_ROLE-DAG: Keyword/None: declaration; name=declaration
|
|
|
|
@attached(#^ATTACHED_ROLE^#)
|
|
macro AttachedMacro
|
|
|
|
// ATTACHED_ROLE: Begin completions, 7 items
|
|
// ATTACHED_ROLE-DAG: Keyword/None: accessor; name=accessor
|
|
// ATTACHED_ROLE-DAG: Keyword/None: body; name=body
|
|
// ATTACHED_ROLE-DAG: Keyword/None: memberAttribute; name=memberAttribute
|
|
// ATTACHED_ROLE-DAG: Keyword/None: member; name=member
|
|
// ATTACHED_ROLE-DAG: Keyword/None: peer; name=peer
|
|
// ATTACHED_ROLE-DAG: Keyword/None: conformance; name=conformance
|
|
// ATTACHED_ROLE-DAG: Keyword/None: extension; name=extension
|
|
|
|
@freestanding(declaration, #^NAMES_POSITION^#)
|
|
macro FreestandingDeclarationMacro
|
|
|
|
// NAMES_POSITION: Begin completions, 1 item
|
|
// NAMES_POSITION-DAG: Keyword/None: names: [#Specify declared names#]; name=names
|
|
|
|
@attached(member, names: #^NAMES_ARGUMENT^#)
|
|
|
|
// NAMES_ARGUMENT: Begin completions, 5 items
|
|
// NAMES_ARGUMENT-DAG: Keyword/None: named({#(name)#}); name=named()
|
|
// NAMES_ARGUMENT-DAG: Keyword/None: overloaded; name=overloaded
|
|
// NAMES_ARGUMENT-DAG: Keyword/None: prefixed({#(name)#}); name=prefixed()
|
|
// NAMES_ARGUMENT-DAG: Keyword/None: suffixed({#(name)#}); name=suffixed()
|
|
// NAMES_ARGUMENT-DAG: Keyword/None: arbitrary; name=arbitrary
|
|
|