mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-10 20:42:21 +02:00
Initializer expressions
This commit is contained in:
parent
f6e31e4976
commit
229a5aa5c5
17 changed files with 305 additions and 18 deletions
|
@ -354,6 +354,7 @@ class BfStrideOfExpression;
|
|||
class BfDefaultExpression;
|
||||
class BfUninitializedExpression;
|
||||
class BfConditionalExpression;
|
||||
class BfInitializerExpression;
|
||||
class BfCollectionInitializerExpression;
|
||||
class BfSizedArrayCreateExpression;
|
||||
class BfEmptyStatement;
|
||||
|
@ -435,6 +436,7 @@ public:
|
|||
virtual void Visit(BfBaseExpression* baseExpr);
|
||||
virtual void Visit(BfMixinExpression* thisExpr);
|
||||
virtual void Visit(BfSizedArrayCreateExpression* createExpr);
|
||||
virtual void Visit(BfInitializerExpression* collectionInitExpr);
|
||||
virtual void Visit(BfCollectionInitializerExpression* collectionInitExpr);
|
||||
virtual void Visit(BfTypeReference* typeRef);
|
||||
virtual void Visit(BfNamedTypeReference* typeRef);
|
||||
|
@ -2017,6 +2019,18 @@ public:
|
|||
BfVariant mValue;
|
||||
}; BF_AST_DECL(BfLiteralExpression, BfExpression);
|
||||
|
||||
class BfInitializerExpression : public BfExpression
|
||||
{
|
||||
public:
|
||||
BF_AST_TYPE(BfInitializerExpression, BfExpression);
|
||||
|
||||
BfExpression* mTarget;
|
||||
BfTokenNode* mOpenBrace;
|
||||
BfSizedArray<BfExpression*> mValues;
|
||||
BfSizedArray<BfTokenNode*> mCommas;
|
||||
BfTokenNode* mCloseBrace;
|
||||
}; BF_AST_DECL(BfInitializerExpression, BfExpression);
|
||||
|
||||
class BfCollectionInitializerExpression : public BfExpression
|
||||
{
|
||||
public:
|
||||
|
@ -2606,7 +2620,7 @@ public:
|
|||
BfTokenNode* mOpenToken;
|
||||
BfTokenNode* mCloseToken;
|
||||
BfSizedArray<BfExpression*> mArguments;
|
||||
BfSizedArray<BfTokenNode*> mCommas;
|
||||
BfSizedArray<BfTokenNode*> mCommas;
|
||||
}; BF_AST_DECL(BfObjectCreateExpression, BfMethodBoundExpression);
|
||||
|
||||
class BfBoxExpression : public BfExpression
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue