AST - com.strumenta.sas.ast.macro
com.strumenta.sas.ast.macro
Statements
AbortMacroStatementClass
A %ABORT statement.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| returnValue | ExpressionA |
| type | String |
GlobalMacroStatementClass
IncludeMacroStatementClass
LocalMacroStatementClass
MacroCommentClass
A commented-out macro statement.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| text | String |
MacroDoMacroStatementClass
A %DO statement.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| body | ASTNode |
| iterateFrom | ExpressionA |
| iterateTo | ExpressionA |
| iterationVariable | String |
| untilCondition | ExpressionA |
| whileCondition | ExpressionA |
Used In
MacroGotoMacroStatementClass
MacroIfMacroStatementClass
An %IF statement.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| alternative | ASTNode |
| condition | ExpressionA |
| consequence | ASTNode |
MacroLabelMacroStatementClass
MacroPutMacroStatementClass
MacroStatementClass (Abstract)
A macro statement.
Super Classes
Subclasses
MacroStatementErrorClass
An invalid or otherwise unsupported macro statement.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| message | String |
PlainTextMacroStatementClass
Macro text that couldn't be parsed as valid SAS or SQL code.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| text | String |
VariableDeclarationClass
A macro variable declaration (`%LET foo = ...`).
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| expression | ExpressionA |
| name | String |
Expressions
ConstantTextExpressionClass
Literal text used as an expression.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| text | String |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
MacroArgumentClass
A macro argument, either in a [macro definition] [MacroDefinition] or in a [macro function call] [MacroFunctionCallExpression] .
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| name | String |
| value | ExpressionA |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
Used In
MacroExpressionClass (Abstract)
Super Classes
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
Subclasses
MacroExpressionErrorClass
An invalid or otherwise unsupported macro expression.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| message | String |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
MacroFunctionCallExpressionClass
An invocation of a macro function.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| arguments | MacroArgument |
| macroName | String |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
MacroOperatorApplicationExpressionClass
Any kind of operator application like `1 + 2 + 3`. If there's only one argument, it's a unary operator application, such as `-&x.` or `not %foo()`. If the operator is `in` or `not in`, then the object represents the expression `<arg0> in/not in (<arg1> ... <argn>)`.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| arguments | ExpressionA |
| operator | String |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
SystemFunctionCallExpressionClass
An invocation of a system function.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| arguments | MacroArgument |
| functionName | String |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
TextConcatExpressionClass
A text concatenation expression.
Super Classes
Local Features
| Name | Type and Description |
|---|---|
| expressions | ExpressionA |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |
Classes
MacroDefinitionClass
A macro function definition.
Local Features
| Name | Type and Description |
|---|---|
| arguments | MacroArgument |
| body | ASTNode |
| name | String |
Inherited Features
| Name | Type and Description |
|---|---|
| position | Position |
| origin | Origin |
| destination | Destination |