diff options
| author | Tim Foley <tfoleyNV@users.noreply.github.com> | 2017-07-18 13:32:56 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-07-18 13:32:56 -0700 |
| commit | 3d313d963f29f6ca6a8d12bd5c403a70c49aca2a (patch) | |
| tree | d4a5f0cefd50c96aaf22921f9fef715b6359c0c5 /source/slang/expr-defs.h | |
| parent | ac310e2d848f3174cfb88ca6166676afc2cbe3cd (diff) | |
| parent | 1c022e2c3654de868c45658683f9e04cf4d68cc0 (diff) | |
Merge pull request #118 from tfoleyNV/falcor-shadow-fixes
Falcor shadow fixes
Diffstat (limited to 'source/slang/expr-defs.h')
| -rw-r--r-- | source/slang/expr-defs.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/source/slang/expr-defs.h b/source/slang/expr-defs.h index 0dac324b9..dc93407e0 100644 --- a/source/slang/expr-defs.h +++ b/source/slang/expr-defs.h @@ -56,11 +56,21 @@ SYNTAX_CLASS(InitializerListExpr, ExpressionSyntaxNode) SYNTAX_FIELD(List<RefPtr<ExpressionSyntaxNode>>, args) END_SYNTAX_CLASS() +// A base class for expressions with arguments +ABSTRACT_SYNTAX_CLASS(ExprWithArgsBase, ExpressionSyntaxNode) + SYNTAX_FIELD(List<RefPtr<ExpressionSyntaxNode>>, Arguments) +END_SYNTAX_CLASS() + +// An aggregate type constructor +SYNTAX_CLASS(AggTypeCtorExpr, ExprWithArgsBase) + SYNTAX_FIELD(TypeExp, base); +END_SYNTAX_CLASS() + + // A base expression being applied to arguments: covers // both ordinary `()` function calls and `<>` generic application -ABSTRACT_SYNTAX_CLASS(AppExprBase, ExpressionSyntaxNode) +ABSTRACT_SYNTAX_CLASS(AppExprBase, ExprWithArgsBase) SYNTAX_FIELD(RefPtr<ExpressionSyntaxNode>, FunctionExpr) - SYNTAX_FIELD(List<RefPtr<ExpressionSyntaxNode>>, Arguments) END_SYNTAX_CLASS() SIMPLE_SYNTAX_CLASS(InvokeExpressionSyntaxNode, AppExprBase) |
