From 274c20a5eb133779a9d890ca79120815fb92b04e Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Wed, 30 Sep 2020 13:28:56 -0400 Subject: Generalizing Serialization (#1563) * First pass at generalizing serializer. * Split out ReflectClassInfo * Use the general ReflectClassInfo * Fix some typos in debug generalized serialization. * Add calculation of classIds. Make distinct addCopy/add on SerialClasses. * Write up of more generalized serialization * WIP to transition from ASTSerialReader/Writer etc to generalized SerialReader/Writer and associated types. * Improvements to SerialExtraObjects. Keep RefObjects in scope in factory * Compiles with Serial refactor - doesn't quite work yet. * First pass serialization appears to work with refector. * Split out type info for general slang types. * Split out slang-serialize-misc-type-info.h * DebugSerialData -> SerialSourecLocData DebugSerialReader -> SerialSourceLocReader DebugSerialWriter -> SerialSourceLocWriter * Remove unused template that only compiles on VS. * Fix warning around unused function on non-VS. --- source/slang/slang-ast-builder.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'source/slang/slang-ast-builder.cpp') diff --git a/source/slang/slang-ast-builder.cpp b/source/slang/slang-ast-builder.cpp index 64061549e..54fe55478 100644 --- a/source/slang/slang-ast-builder.cpp +++ b/source/slang/slang-ast-builder.cpp @@ -38,7 +38,7 @@ void SharedASTBuilder::init(Session* session) // NOTE! That this adds the names of the abstract classes too(!) for (Index i = 0; i < Index(ASTNodeType::CountOf); ++i) { - const ReflectClassInfo* info = ReflectClassInfo::getInfo(ASTNodeType(i)); + const ReflectClassInfo* info = ASTClassInfo::getInfo(ASTNodeType(i)); if (info) { m_sliceToTypeMap.Add(UnownedStringSlice(info->m_name), info); @@ -171,7 +171,7 @@ ASTBuilder::~ASTBuilder() { for (NodeBase* node : m_dtorNodes) { - const ReflectClassInfo* info = ReflectClassInfo::getInfo(node->astNodeType); + const ReflectClassInfo* info = ASTClassInfo::getInfo(node->astNodeType); SLANG_ASSERT(info->m_destructorFunc); info->m_destructorFunc(node); } @@ -179,7 +179,7 @@ ASTBuilder::~ASTBuilder() NodeBase* ASTBuilder::createByNodeType(ASTNodeType nodeType) { - const ReflectClassInfo* info = ReflectClassInfo::getInfo(nodeType); + const ReflectClassInfo* info = ASTClassInfo::getInfo(nodeType); auto createFunc = info->m_createFunc; SLANG_ASSERT(createFunc); -- cgit v1.2.3