The role of a macro, for example #freestanding(declaration) or @attached(member).
Import path
import codeql.swift.elements.internal.MacroRoleImplDirect supertypes
Indirect supertypes
Predicates
| getKindName | String representation of the role kind. |
| getMacroSyntaxName | String representation of the macro syntax. |
| isAccessorKind | Holds for |
| isAttachedMacroSyntax | Holds for @attached macros. |
| isCodeItemKind | Holds for |
| isConformanceKind | Holds for |
| isDeclarationKind | Holds for |
| isExpressionKind | Holds for |
| isExtensionKind | Holds for |
| isFreestandingMacroSyntax | Holds for #freestanding macros. |
| isMemberAttributeKind | Holds for |
| isMemberKind | Holds for |
| isPeerKind | Holds for |
| toString | Gets the string representation of this element. |
Inherited predicates
| getAConformance | Gets any of the conformances of this macro role. | from MacroRole |
| getAName | Gets any of the names of this macro role. | from MacroRole |
| getAPrimaryQlClass | Gets the name of a primary CodeQL class to which this element belongs. | from MacroRole |
| getConformance | Gets the | from MacroRole |
| getEnclosingCallable | Gets the nearest | from AstNode |
| getEnclosingDecl | Gets the nearest declaration that contains this AST node, if any. | from AstNode |
| getEnclosingFunction | Gets the nearest function definition that contains this AST node, if any. This includes functions, methods, (de)initializers, and accessors, but not closures. | from AstNode |
| getFile | Gets the primary file where this element occurs. | from Locatable |
| getFullyUnresolved | from Element | |
| getImmediateConformance | Gets the | from MacroRole |
| getKind | Gets the kind of this macro role (declaration, expression, member, etc.). | from MacroRole |
| getLocation | Gets the location associated with this element in the code, if it exists. | from Locatable |
| getMacroSyntax | Gets the #freestanding or @attached. | from MacroRole |
| getName | Gets the | from MacroRole |
| getNumberOfConformances | Gets the number of conformances of this macro role. | from MacroRole |
| getNumberOfNames | Gets the number of names of this macro role. | from MacroRole |
| getPrimaryQlClasses | Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. | from Element |
| getResolveStep | Gets the most immediate element that should substitute this element in the explicit AST, if any. Classes can override this to indicate this node should be in the “hidden” AST, mostly reserved for conversions and syntactic sugar nodes like parentheses. | from Element |
| hasLocation | Holds if | from Locatable |
| isUnknown | Holds if this element is unknown. | from Element |
| resolve | Gets the element that should substitute this element in the explicit AST, applying | from Element |