diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2020-10-06 17:07:22 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-10-06 14:07:22 -0700 |
| commit | 4ad2e52662a00f7d8b25be6d451bba33ba62947f (patch) | |
| tree | abd70777a73037c44e40d182e332c7a19c60e779 /source/slang/slang-serialize-container.cpp | |
| parent | 8a70e20df6f47678c146eb29f89655aa734f97c7 (diff) | |
Use Reflection for (Serial)RefObject Serialization (#1567)
* 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.
* Improve output of type names that are in scopes in C++ extractor.
Update premake5.lua to run generation for RefObject derived types.
* C++ extractor working on RefObject type.
* Split out serialization functionality that spans different types into slang-serialization-factory.cpp/.h
Put AST type info into header.
Removed RefObjectSerialSubType - use RefObjectType
Add filtering for RefObject derived types
Remove construction and filteringhacks.
* Set up field serialization for SerialRefObject derived types.
* Fix template problem compiling on Clang/Gcc
* Work in progress to make Value types work.
* Added slang-value-reflect.cpp
Diffstat (limited to 'source/slang/slang-serialize-container.cpp')
| -rw-r--r-- | source/slang/slang-serialize-container.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/source/slang/slang-serialize-container.cpp b/source/slang/slang-serialize-container.cpp index 3d5b234ff..7dd2c15a1 100644 --- a/source/slang/slang-serialize-container.cpp +++ b/source/slang/slang-serialize-container.cpp @@ -10,6 +10,7 @@ #include "slang-serialize-ast.h" #include "slang-serialize-ir.h" #include "slang-serialize-source-loc.h" +#include "slang-serialize-factory.h" namespace Slang { @@ -143,7 +144,7 @@ namespace Slang { { if (!serialClasses) { - SLANG_RETURN_ON_FAIL(SerialClasses::create(serialClasses)); + SLANG_RETURN_ON_FAIL(SerialClassesUtil::create(serialClasses)); } ModuleSerialFilter filter(moduleDecl); @@ -295,7 +296,7 @@ namespace Slang { { if (!serialClasses) { - SLANG_RETURN_ON_FAIL(SerialClasses::create(serialClasses)); + SLANG_RETURN_ON_FAIL(SerialClassesUtil::create(serialClasses)); } // TODO(JS): We probably want to store off better information about each of the translation unit |
