mirror of
https://github.com/Ed94/gencpp.git
synced 2025-01-10 08:53:32 -08:00
WIP, updates to vs solution, got natvis working again. serializations still bugged
This commit is contained in:
parent
947b4e3615
commit
0241979085
@ -108,31 +108,37 @@
|
||||
<None Include="test\Readme.md" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="project\Banned.define.hpp" />
|
||||
<ClInclude Include="project\Banned.undef.hpp" />
|
||||
<ClInclude Include="project\Bloat.hpp" />
|
||||
<ClInclude Include="project\gen.hpp" />
|
||||
<ClInclude Include="project\gen.undef.macros.hpp" />
|
||||
<ClInclude Include="test\DummyInclude.hpp" />
|
||||
<ClInclude Include="test\gen\array.Upfront.gen.hpp" />
|
||||
<ClInclude Include="test\gen\buffer.Upfront.gen.hpp" />
|
||||
<ClInclude Include="test\gen\hashtable.Upfront.gen.hpp" />
|
||||
<ClInclude Include="test\gen\ring.Upfront.gen.hpp" />
|
||||
<ClInclude Include="test\gen\sanity.Upfront.gen.hpp" />
|
||||
<ClInclude Include="test\Parsed\Buffer.Parsed.hpp" />
|
||||
<ClInclude Include="test\Parsed\HashTable.Parsed.hpp" />
|
||||
<ClInclude Include="test\Parsed\Ring.Parsed.hpp" />
|
||||
<ClInclude Include="test\SOA.hpp" />
|
||||
<ClInclude Include="test\Upfront\Array.Upfront.hpp" />
|
||||
<ClInclude Include="test\Upfront\Buffer.Upfront.hpp" />
|
||||
<ClInclude Include="test\Upfront\HashTable.Upfront.hpp" />
|
||||
<ClInclude Include="test\Upfront\Memory.Upfront.hpp" />
|
||||
<ClInclude Include="test\Upfront\Ring.Upfront.hpp" />
|
||||
<ClInclude Include="test\Upfront\Sanity.Upfront.hpp" />
|
||||
<ClInclude Include="test\Parsed\Array.Parsed.hpp" />
|
||||
<ClInclude Include="test\Parsed\Sanity.Parsed.hpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="project\Bloat.cpp" />
|
||||
<ClCompile Include="project\gen.cpp" />
|
||||
<ClCompile Include="singleheader\gen\gen.singleheader.cpp" />
|
||||
<ClCompile Include="test\gen\build\meson-private\sanitycheckc.c" />
|
||||
<ClCompile Include="test\gen\build\meson-private\sanitycheckcpp.cc" />
|
||||
<ClCompile Include="test\test.cpp" />
|
||||
<ClCompile Include="test\test.Upfront.cpp" />
|
||||
<ClCompile Include="test\test.Parsed.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Natvis Include=".vscode\gencpp.natvis" />
|
||||
<Natvis Include="scripts\gencpp.natvis" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
|
@ -15,15 +15,9 @@
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="project\Bloat.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="project\gen.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="project\gen.singleheader.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="test\gen\build\meson-private\sanitycheckc.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
@ -33,24 +27,69 @@
|
||||
<ClCompile Include="test\test.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="singleheader\gen\gen.singleheader.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="test\test.Upfront.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="project\Bloat.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="project\Bloat.redef.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="project\Bloat.undef.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="project\gen.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="thirdparty\zpl.h">
|
||||
<ClInclude Include="project\gen.undef.macros.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Upfront\Sanity.hpp">
|
||||
<ClInclude Include="test\DummyInclude.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\gen\array.Upfront.gen.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\gen\buffer.Upfront.gen.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\gen\hashtable.Upfront.gen.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\gen\ring.Upfront.gen.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\gen\sanity.Upfront.gen.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Parsed\Buffer.Parsed.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Parsed\HashTable.Parsed.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Parsed\Ring.Parsed.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\SOA.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Upfront\Array.Upfront.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Upfront\Buffer.Upfront.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Upfront\HashTable.Upfront.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Upfront\Ring.Upfront.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Upfront\Sanity.Upfront.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Parsed\Array.Parsed.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="test\Parsed\Sanity.Parsed.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
@ -61,13 +100,12 @@
|
||||
<None Include="scripts\build.ps1" />
|
||||
<None Include="scripts\clean.ps1" />
|
||||
<None Include="scripts\get_sources.ps1" />
|
||||
<None Include="scripts\meson.build" />
|
||||
<None Include="singleheader\genc.refactor" />
|
||||
<None Include="test\gen\meson.build" />
|
||||
<None Include="test\meson.build" />
|
||||
<None Include="test\Readme.md" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Natvis Include=".vscode\gencpp.natvis" />
|
||||
<Natvis Include="scripts\gencpp.natvis" />
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -1854,6 +1854,7 @@ namespace gen
|
||||
|
||||
Code result = make_code();
|
||||
|
||||
// TODO : Bring back some of the old way, we need to recursively duplicate the children.
|
||||
mem_copy( result.ast, this, sizeof( AST ) );
|
||||
|
||||
return result.ast;
|
||||
@ -2219,10 +2220,12 @@ namespace gen
|
||||
else
|
||||
result.append_fmt( "%s", ValueType->to_string() );
|
||||
|
||||
if ( NumEntries )
|
||||
for ( CodeParam param : cast<CodeParam>() )
|
||||
if ( NumEntries - 1)
|
||||
{
|
||||
result.append( param.to_string() );
|
||||
for ( CodeParam param : Next->cast<CodeParam>() )
|
||||
{
|
||||
result.append_fmt( ", %s", param.to_string() );
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -3732,6 +3735,8 @@ namespace gen
|
||||
if ( value )
|
||||
result->Value = value;
|
||||
|
||||
result->NumEntries++;
|
||||
|
||||
return (CodeParam) result;
|
||||
}
|
||||
|
||||
@ -7839,3 +7844,4 @@ namespace gen
|
||||
}
|
||||
// End: gen_time
|
||||
#endif
|
||||
|
||||
|
@ -2760,7 +2760,8 @@ namespace gen
|
||||
template< class Type >
|
||||
Type cast()
|
||||
{
|
||||
return (Type)(Code){ this };
|
||||
AST* ast = this;
|
||||
return * rcast( Type*, & ast );
|
||||
}
|
||||
|
||||
operator Code();
|
||||
@ -3053,22 +3054,24 @@ namespace gen
|
||||
return { (AST*)ast };
|
||||
}
|
||||
#pragma region Iterator
|
||||
CodeParam* begin()
|
||||
CodeParam begin()
|
||||
{
|
||||
if ( ast )
|
||||
return rcast( CodeParam*, ast );
|
||||
return { ast };
|
||||
|
||||
return nullptr;
|
||||
return { nullptr };
|
||||
}
|
||||
CodeParam* end()
|
||||
CodeParam end()
|
||||
{
|
||||
return nullptr;
|
||||
return { (AST_Param*) rcast( AST*, ast)->Next };
|
||||
}
|
||||
CodeParam& operator++()
|
||||
{
|
||||
if ( ast && raw()->Next )
|
||||
ast = (AST_Param*) raw()->Next;
|
||||
|
||||
ast = (AST_Param*) rcast( AST*, ast )->Next;
|
||||
return * this;
|
||||
}
|
||||
CodeParam operator*()
|
||||
{
|
||||
return * this;
|
||||
}
|
||||
#pragma endregion Iterator
|
||||
@ -3212,25 +3215,6 @@ namespace gen
|
||||
};
|
||||
static_assert( sizeof(AST_Class) == sizeof(AST), "ERROR: AST_Class is not the same size as AST");
|
||||
|
||||
struct AST_Exec
|
||||
{
|
||||
union {
|
||||
char _PAD_[ sizeof(SpecifierT) * AST::ArrSpecs_Cap ];
|
||||
struct
|
||||
{
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 4 ];
|
||||
CodeBody Body;
|
||||
};
|
||||
};
|
||||
Code Prev;
|
||||
Code Next;
|
||||
Code Parent;
|
||||
StringCached Name;
|
||||
CodeT Type;
|
||||
char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ];
|
||||
};
|
||||
static_assert( sizeof(AST_Exec) == sizeof(AST), "ERROR: AST_Exec is not the same size as AST");
|
||||
|
||||
struct AST_Enum
|
||||
{
|
||||
union {
|
||||
@ -3254,6 +3238,25 @@ namespace gen
|
||||
};
|
||||
static_assert( sizeof(AST_Enum) == sizeof(AST), "ERROR: AST_Enum is not the same size as AST");
|
||||
|
||||
struct AST_Exec
|
||||
{
|
||||
union {
|
||||
char _PAD_[ sizeof(SpecifierT) * AST::ArrSpecs_Cap ];
|
||||
struct
|
||||
{
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 4 ];
|
||||
Code Body;
|
||||
};
|
||||
};
|
||||
Code Prev;
|
||||
Code Next;
|
||||
Code Parent;
|
||||
StringCached Name;
|
||||
CodeT Type;
|
||||
char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ];
|
||||
};
|
||||
static_assert( sizeof(AST_Exec) == sizeof(AST), "ERROR: AST_Exec is not the same size as AST");
|
||||
|
||||
struct AST_Extern
|
||||
{
|
||||
union {
|
||||
@ -3261,7 +3264,7 @@ namespace gen
|
||||
struct
|
||||
{
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 4 ];
|
||||
CodeBody Body;
|
||||
Code Body;
|
||||
};
|
||||
};
|
||||
Code Prev;
|
||||
@ -3347,8 +3350,11 @@ namespace gen
|
||||
{
|
||||
union {
|
||||
char _PAD_[ sizeof(SpecifierT) * AST::ArrSpecs_Cap ];
|
||||
struct {
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 4 ];
|
||||
CodeBody Body;
|
||||
};
|
||||
};
|
||||
Code Prev;
|
||||
Code Next;
|
||||
Code Parent;
|
||||
@ -3388,8 +3394,9 @@ namespace gen
|
||||
char _PAD_[ sizeof(SpecifierT) * AST::ArrSpecs_Cap ];
|
||||
struct
|
||||
{
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 3 ];
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 2 ];
|
||||
CodeType ValueType;
|
||||
char _PAD_PROPERTIES_2_[ sizeof(AST*) ];
|
||||
CodeBody Body;
|
||||
};
|
||||
};
|
||||
@ -3398,8 +3405,7 @@ namespace gen
|
||||
Code Parent;
|
||||
StringCached Name;
|
||||
CodeT Type;
|
||||
ModuleFlag ModuleFlags;
|
||||
char _PAD_UNUSED_[ sizeof(u32) ];
|
||||
char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ];
|
||||
};
|
||||
static_assert( sizeof(AST_OpCast) == sizeof(AST), "ERROR: AST_OpCast is not the same size as AST");
|
||||
|
||||
@ -3409,8 +3415,9 @@ namespace gen
|
||||
char _PAD_[ sizeof(SpecifierT) * AST::ArrSpecs_Cap ];
|
||||
struct
|
||||
{
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 3 ];
|
||||
char _PAD_PROPERTIES_2_[ sizeof(AST*) * 2 ];
|
||||
CodeType ValueType;
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) ];
|
||||
Code Value;
|
||||
};
|
||||
};
|
||||
@ -3419,7 +3426,7 @@ namespace gen
|
||||
Code Parent;
|
||||
StringCached Name;
|
||||
CodeT Type;
|
||||
ModuleFlag ModuleFlags;
|
||||
char _PAD_UNUSED_[ sizeof(ModuleFlag) ];
|
||||
u32 NumEntries;
|
||||
};
|
||||
static_assert( sizeof(AST_Param) == sizeof(AST), "ERROR: AST_Param is not the same size as AST");
|
||||
@ -3432,7 +3439,7 @@ namespace gen
|
||||
Code Parent;
|
||||
StringCached Name;
|
||||
CodeT Type;
|
||||
ModuleFlag ModuleFlags;
|
||||
char _PAD_UNUSED_[ sizeof(ModuleFlag) ];
|
||||
u32 NumEntries;
|
||||
};
|
||||
static_assert( sizeof(AST_Specifier) == sizeof(AST), "ERROR: AST_Specifier is not the same size as AST");
|
||||
@ -3466,9 +3473,7 @@ namespace gen
|
||||
char _PAD_[ sizeof(SpecifierT) * AST::ArrSpecs_Cap ];
|
||||
struct
|
||||
{
|
||||
CodeAttributes Attributes;
|
||||
CodeType ReturnType;
|
||||
CodeSpecifier Specs;
|
||||
char _PAD_PROPERTIES_[ sizeof(AST*) * 2 ];
|
||||
CodeParam Params;
|
||||
Code Declaration;
|
||||
};
|
||||
@ -4195,12 +4200,12 @@ namespace gen
|
||||
Define_AST_Cast( Var );
|
||||
#undef Define_AST_Cast
|
||||
|
||||
#pragma region Code Operator Cast Impl
|
||||
#pragma region Code Operator Cast Impj
|
||||
|
||||
#define Define_CodeCast( type ) \
|
||||
Code::operator Code ## type() const \
|
||||
{ \
|
||||
return * rcast( Code ## type*, ast ); \
|
||||
return { (AST_ ## type*) ast }; \
|
||||
}
|
||||
|
||||
Define_CodeCast( Attributes );
|
||||
@ -4277,3 +4282,4 @@ namespace gen
|
||||
|
||||
// end: gen_time
|
||||
#endif
|
||||
|
||||
|
@ -53,309 +53,146 @@
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST">
|
||||
<DisplayString>AST: {Name}</DisplayString>
|
||||
<DisplayString Condition="this != nullptr">{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="Content != nullptr">
|
||||
<Item Name="Content">Content</Item>
|
||||
</Case>
|
||||
<Case Condition="ArrSpecs != nullptr">
|
||||
<ArrayItems Name="Specifiers" Condition="ArrSpecs != nullptr"
|
||||
Size="{ArrSpecs_Cap}">
|
||||
<ValuePointer>ArrSpecs</ValuePointer>
|
||||
</ArrayItems>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="Prev != nullptr">
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Case>
|
||||
<Case Condition="Front != nullptr">
|
||||
<Item Name="Front">Front</Item>
|
||||
<Item Name="Back">Back</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
<Expand>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Specs">Specs</Item>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="ParentType != nullptr">
|
||||
<Item Name="ParentType">ParentType</Item>
|
||||
</Case>
|
||||
<Case Condition="ReturnType != nullptr">
|
||||
<Item Name="ReturnType">ReturnType</Item>
|
||||
</Case>
|
||||
<Case Condition="UnderlyingType != nullptr">
|
||||
<Item Name="UnderlyingType">UnderlyingType</Item>
|
||||
</Case>
|
||||
<Case Condition="ValueType != nullptr">
|
||||
<Item Name="ValueType">ValueType</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
<Item Name="Params">Params</Item>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="ArrExpr != nullptr">
|
||||
<Item Name="ArrExpr">ArrExpr</Item>
|
||||
</Case>
|
||||
<Case Condition="Body != nullptr">
|
||||
<Item Name="Body">Body</Item>
|
||||
</Case>
|
||||
<Case Condition="Declaration != nullptr">
|
||||
<Item Name="Declaration">Declaration</Item>
|
||||
</Case>
|
||||
<Case Condition="Value != nullptr">
|
||||
<Item Name="Value">Value</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
</Expand>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="Op != nullptr">
|
||||
<Item Name="Operator">Op</Item>
|
||||
</Case>
|
||||
<Case Condition="ParentAccess != nullptr">
|
||||
<Item Name="ParentAccess">ParentAccess</Item>
|
||||
</Case>
|
||||
<Case Condition="NumEntries != nullptr">
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::Code">
|
||||
<DisplayString Condition="ast != nullptr">AST: {ast->Name} Type: {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="Content != nullptr">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} Type: {ast->Type}</DisplayString>
|
||||
<Expand HideRawView="false">
|
||||
<Item Name="Content">ast->Content</Item>
|
||||
</Case>
|
||||
<Case Condition="ArrSpecs != nullptr">
|
||||
<ArrayItems Name="Specifiers" Condition="ArrSpecs != nullptr"
|
||||
Size="{ArrSpecs_Cap}">
|
||||
<ValuePointer>ast->ArrSpecs</ValuePointer>
|
||||
</ArrayItems>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="Prev != nullptr">
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="ModuleFlags" Condition="ast->ModuleFlags != ModuleFlag::Invalid">ast->ModuleFlags</Item>
|
||||
<Item Name="ArrSpecs" Condition="ast->ArrSpecs[0] < 18">ast->ArrSpecs</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
</Case>
|
||||
<Case Condition="Front != nullptr">
|
||||
<Item Name="Front">ast->Front</Item>
|
||||
<Item Name="Back">ast->Back</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
<Expand>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="ParentType != nullptr">
|
||||
<Item Name="ParentType">ast->ParentType</Item>
|
||||
</Case>
|
||||
<Case Condition="ReturnType != nullptr">
|
||||
<Item Name="ReturnType">ast->ReturnType</Item>
|
||||
</Case>
|
||||
<Case Condition="UnderlyingType != nullptr">
|
||||
<Item Name="UnderlyingType">ast->UnderlyingType</Item>
|
||||
</Case>
|
||||
<Case Condition="ValueType != nullptr">
|
||||
<Item Name="ValueType">ast->ValueType</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
<Item Name="Params">ast->Params</Item>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="ArrExpr != nullptr">
|
||||
<Item Name="ArrExpr">ast->ArrExpr</Item>
|
||||
</Case>
|
||||
<Case Condition="Body != nullptr">
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
</Case>
|
||||
<Case Condition="Declaration != nullptr">
|
||||
<Item Name="Declaration">ast->Declaration</Item>
|
||||
</Case>
|
||||
<Case Condition="Value != nullptr">
|
||||
<Item Name="Value">ast->Value</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
</Expand>
|
||||
<Expand HideRawView="true">
|
||||
<Switch>
|
||||
<Case Condition="Op != nullptr">
|
||||
<Item Name="Operator">ast->Op</Item>
|
||||
</Case>
|
||||
<Case Condition="ParentAccess != nullptr">
|
||||
<Item Name="ParentAccess">ast->ParentAccess</Item>
|
||||
</Case>
|
||||
<Case Condition="NumEntries != nullptr">
|
||||
<Item Name="NumEntries">ast->NumEntries</Item>
|
||||
</Case>
|
||||
</Switch>
|
||||
</Expand>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Body">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Front">Front</Item>
|
||||
<Item Name="Back">Back</Item>
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Attributes">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Content">Content</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Content">Content</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Comment">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Content">Content</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Content">Content</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Class">
|
||||
<DisplayString Condition="Parent != nullptr">{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="ParentType">ParentType</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="ParentAccess">ParentAccess</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Exec">
|
||||
<DisplayString Condition="Parent != nullptr">{Name} {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Enum">
|
||||
<DisplayString Condition="Parent != nullptr">{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="UnderlyingType">UnderlyingType</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Exec">
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Extern">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Include">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Content">Content</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Content">Content</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Friend">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="Declaration">Declaration</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Declaration">Declaration</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Fn">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Specs">Specs</Item>
|
||||
<Item Name="ReturnType">ReturnType</Item>
|
||||
<Item Name="Params">Params</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Module">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
@ -364,10 +201,8 @@
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Namespace">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
@ -377,154 +212,131 @@
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Operator">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Specs">Specs</Item>
|
||||
<Item Name="ReturnType">ReturnType</Item>
|
||||
<Item Name="Op">Op</Item>
|
||||
<Item Name="Params">Params</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Op">Op</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_OpCast">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Type">Type</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="ValueType">ValueType</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="ValueType">ValueType</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Param">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="ValueType">ValueType</Item>
|
||||
<Item Name="Value">Value</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="ValueType">ValueType</Item>
|
||||
<Item Name="Value">Value</Item>
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Specifiers">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<ArrayItems Name="ArrSpecs" Count="AST::ArrSpecs_Cap">
|
||||
<ValuePointer>ArrSpecs</ValuePointer>
|
||||
</ArrayItems>
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Struct">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="ParentType">ParentType</Item>
|
||||
<Item Name="ParentAccess">ParentAccess</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="ParentType">ParentType</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="ParentAccess">ParentAccess</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Template">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Declaration">Declaration</Item>
|
||||
<Item Name="Params">Params</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="ReturnType">ReturnType</Item>
|
||||
<Item Name="Specs">Specs</Item>
|
||||
<Item Name="Params">Params</Item>
|
||||
<Item Name="Declaration">Declaration</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Type">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Specs">Specs</Item>
|
||||
<Item Name="ArrExpr">ArrExpr</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Typedef">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="UnderlyingType">UnderlyingType</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="UnderlyingType">UnderlyingType</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Union">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Body">Body</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Using">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="UnderlyingType">UnderlyingType</Item>
|
||||
<Item Name="Op">Op</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="ParentAccess">ParentAccess</Item>
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_UsingNamespace">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
@ -534,76 +346,69 @@
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::AST_Var">
|
||||
<DisplayString>{Name} {Type}</DisplayString>
|
||||
<DisplayString>{Name} Type: {Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Name">Name</Item>
|
||||
<Item Name="ModuleFlags">ModuleFlags</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
<Item Name="Attributes">Attributes</Item>
|
||||
<Item Name="Specs">Specs</Item>
|
||||
<Item Name="ValueType">ValueType</Item>
|
||||
<Item Name="Value">Value</Item>
|
||||
<Item Name="Op">Op</Item>
|
||||
<Item Name="ParentAccess">ParentAccess</Item>
|
||||
<Item Name="NumEntries">NumEntries</Item>
|
||||
<Item Name="Parent">Parent</Item>
|
||||
<Item Name="Prev">Prev</Item>
|
||||
<Item Name="Next">Next</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="CodeBody">
|
||||
<Type Name="gen::CodeBody">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="Front">ast->Front</Item>
|
||||
<Item Name="Back">ast->Back</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Front</Item>
|
||||
<Item Name="Next">ast->Back</Item>
|
||||
<Item Name="NumEntries">ast->NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="CodeAttributes">
|
||||
<Type Name="gen::CodeAttributes">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="Content">ast->Content</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeComment">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Content">ast->Content</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeClass">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="ParentType">ast->ParentType</Item>
|
||||
<Item Name="ParentAccess">ast->ParentAccess</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="ParentAccess">ast->ParentAccess</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeExec">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
@ -616,258 +421,214 @@
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeEnum">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="UnderlyingType">ast->UnderlyingType</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeInclude">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Content">ast->Content</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeFriend">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Declaration">ast->Declaration</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeFn">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="ReturnType">ast->ReturnType</Item>
|
||||
<Item Name="Params">ast->Params</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeModule">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeNamespace">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeOperator">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="ReturnType">ast->ReturnType</Item>
|
||||
<Item Name="Op">ast->Op</Item>
|
||||
<Item Name="Params">ast->Params</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Op">ast->Op</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeOpCast">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ValueType">ast->ValueType</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeParam">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ValueType">ast->ValueType</Item>
|
||||
<Item Name="Value">ast->Value</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="NumEntries">ast->NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeSpecifier">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<ArrayItems Name="ArrSpecs" Condition="ast != nullptr" Size="ast->NumEntries">
|
||||
<ValuePointer>ast->ArrSpecs</ValuePointer>
|
||||
</ArrayItems>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="NumEntries">ast->NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeStruct">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="ParentType">ast->ParentType</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="ParentAccess">ast->ParentAccess</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeVar">
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="ValueType">ast->ValueType</Item>
|
||||
<Item Name="Value">ast->Value</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeTemplate">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="ReturnType">ast->ReturnType</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="Params">ast->Params</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Declaration">ast->Declaration</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeType">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="ArrExpr">ast->ArrExpr</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeTypedef">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="UnderlyingType">ast->UnderlyingType</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeUnion">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Body">ast->Body</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeUsing">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="UnderlyingType">ast->UnderlyingType</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Operator">ast->Op</Item>
|
||||
<Item Name="Access">ast->ParentAccess</Item>
|
||||
<Item Name="Entries">ast->NumEntries</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeUsingNamespace">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
@ -879,18 +640,17 @@
|
||||
</Type>
|
||||
|
||||
<Type Name="gen::CodeVar">
|
||||
<DisplayString Condition="ast == nullptr">Null</DisplayString>
|
||||
<DisplayString Condition="ast != nullptr">{ast->Name} {ast->Type}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
<Item Name="Attributes">ast->Attributes</Item>
|
||||
<Item Name="Specs">ast->Specs</Item>
|
||||
<Item Name="ValueType">ast->ValueType</Item>
|
||||
<Item Name="Value">ast->Value</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Prev">ast->Prev</Item>
|
||||
<Item Name="Next">ast->Next</Item>
|
||||
<Item Name="Parent">ast->Parent</Item>
|
||||
<Item Name="Name">ast->Name</Item>
|
||||
<Item Name="Type">ast->Type</Item>
|
||||
<Item Name="ModuleFlags">ast->ModuleFlags</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
|
@ -139,7 +139,7 @@ u32 gen_sanity_upfront()
|
||||
|
||||
// Namespace
|
||||
{
|
||||
Code namespace_def;
|
||||
CodeNamespace namespace_def;
|
||||
{
|
||||
Code body = def_namespace_body( 1
|
||||
, def_comment( txt_StrC("Empty namespace body") )
|
||||
|
@ -3,5 +3,16 @@
|
||||
Building Test
|
||||
|
||||
ninja: Entering directory `C:\projects\gencpp\test\gen\build'
|
||||
[1/2] Compiling C++ object gencpp.exe.p/.._test.cpp.obj
|
||||
[1/2] Compiling C++ object gencpp.exe.p/.._test.Upfront.cpp.obj
|
||||
[2/2] Linking target gencpp.exe
|
||||
|
||||
Generating files Parsed...
|
||||
|
||||
Beginning format...
|
||||
Formatting [1/5] C:\projects\gencpp\test\gen\array.Upfront.gen.hpp
|
||||
Formatting [2/5] C:\projects\gencpp\test\gen\buffer.Upfront.gen.hpp
|
||||
Formatting [3/5] C:\projects\gencpp\test\gen\hashtable.Upfront.gen.hpp
|
||||
Formatting [4/5] C:\projects\gencpp\test\gen\ring.Upfront.gen.hpp
|
||||
Formatting [5/5] C:\projects\gencpp\test\gen\sanity.Upfront.gen.hpp
|
||||
|
||||
Formatting complete
|
||||
|
Loading…
Reference in New Issue
Block a user