1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-22 09:38:01 +02:00

Added expression bodies for properties

This commit is contained in:
Brian Fiete 2019-09-30 12:24:02 -07:00
parent 69e3bf94f7
commit 85648cda63
8 changed files with 102 additions and 54 deletions

View file

@ -2070,17 +2070,25 @@ void BfPrinter::Visit(BfPropertyDeclaration* propertyDeclaration)
ExpectSpace();
QueueVisitChild(propertyDeclaration->mInitializer);
bool doInlineBlock = false;
if (propertyDeclaration->mDefinitionBlock != NULL)
DoBlockOpen(propertyDeclaration->mDefinitionBlock, true, &doInlineBlock);
for (auto method : propertyDeclaration->mMethods)
if (auto block = BfNodeDynCast<BfBlock>(propertyDeclaration->mDefinitionBlock))
{
Visit(method);
bool doInlineBlock = false;
DoBlockOpen(block, true, &doInlineBlock);
for (auto method : propertyDeclaration->mMethods)
{
Visit(method);
}
DoBlockClose(block, true, doInlineBlock);
}
else
{
QueueVisitChild(propertyDeclaration->mDefinitionBlock);
ExpectSpace();
for (auto method : propertyDeclaration->mMethods)
{
QueueVisitChild(method->mBody);
}
}
if (propertyDeclaration->mDefinitionBlock != NULL)
DoBlockClose(propertyDeclaration->mDefinitionBlock, true, doInlineBlock);
//QueueVisitChild(propertyDeclaration->mTrailingSemicolon);