diff options
| author | Devin Doucette <[email protected]> | 2026-03-18 08:14:07 -0600 |
|---|---|---|
| committer | GitHub Enterprise <[email protected]> | 2026-03-18 08:14:07 -0600 |
| commit | ee40d3387465b96058d33ed4d0e41d91a4ee1327 (patch) | |
| tree | 59361054b26ab9402abefdbc23d00fd61b4523ae /src/zencore/include | |
| parent | workaround for change in xmake behaviour around download file naming (#858) (diff) | |
| download | zen-ee40d3387465b96058d33ed4d0e41d91a4ee1327.tar.xz zen-ee40d3387465b96058d33ed4d0e41d91a4ee1327.zip | |
Add natvis for Compact Binary (#860)
Add natvis for Compact Binary
Includes natvis for DateTime, TimeSpan, IoHash, Guid, Oid.
Based on UE CL 51830581.
Diffstat (limited to 'src/zencore/include')
| -rw-r--r-- | src/zencore/include/zencore/compactbinary.h | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/src/zencore/include/zencore/compactbinary.h b/src/zencore/include/zencore/compactbinary.h index b128e4205..74f4cdf8d 100644 --- a/src/zencore/include/zencore/compactbinary.h +++ b/src/zencore/include/zencore/compactbinary.h @@ -1530,4 +1530,98 @@ void uson_forcelink(); // internal void cbjson_forcelink(); // internal void cbyaml_forcelink(); // internal +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +// Types to support debug visualizers (natvis). + +// A field/array/object in memory can be visualized in a debugger supporting natvis by casting to this type. +// (DebugCb*)Pointer works for any field/array/object that starts with its field type. +struct DebugCb +{ +}; + +// Types that visualize a pointer to a value, *not* a pointer to a field. +struct DebugCbObject +{ +}; +struct DebugCbUniformObject +{ +}; +struct DebugCbArray +{ +}; +struct DebugCbUniformArray +{ +}; +struct DebugCbBinary +{ +}; +struct DebugCbString +{ +}; +struct DebugCbIntegerPositive +{ +}; +struct DebugCbIntegerNegative +{ +}; +struct DebugCbFloat32 +{ +}; +struct DebugCbFloat64 +{ +}; +struct DebugCbObjectAttachment +{ +}; +struct DebugCbBinaryAttachment +{ +}; +struct DebugCbHash +{ +}; +struct DebugCbUuid +{ +}; +struct DebugCbDateTime +{ +}; +struct DebugCbTimeSpan +{ +}; +struct DebugCbObjectId +{ +}; +struct DebugCbCustomById +{ +}; +struct DebugCbCustomByName +{ +}; + +namespace CompactBinaryPrivate { + + void ReferenceDebugTypes(DebugCb*, + DebugCbObject*, + DebugCbUniformObject*, + DebugCbArray*, + DebugCbUniformArray*, + DebugCbBinary*, + DebugCbString*, + DebugCbIntegerPositive*, + DebugCbIntegerNegative*, + DebugCbFloat32*, + DebugCbFloat64*, + DebugCbObjectAttachment*, + DebugCbBinaryAttachment*, + DebugCbHash*, + DebugCbUuid*, + DebugCbDateTime*, + DebugCbTimeSpan*, + DebugCbObjectId*, + DebugCbCustomById*, + DebugCbCustomByName*); + +} // namespace CompactBinaryPrivate + } // namespace zen |