From ca1f93a916ce6b984cba402c8d3710988f2b618f Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Mon, 27 Mar 2023 13:57:42 -0400 Subject: Using SourceMap for location output (#2736) * #include an absolute path didn't work - because paths were taken to always be relative. * WIP using SourceMap with SourceManager. * Add a test to check obfuscation map is working. --------- Co-authored-by: Yong He --- source/compiler-core/slang-json-source-map-util.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 source/compiler-core/slang-json-source-map-util.h (limited to 'source/compiler-core/slang-json-source-map-util.h') diff --git a/source/compiler-core/slang-json-source-map-util.h b/source/compiler-core/slang-json-source-map-util.h new file mode 100644 index 000000000..51b11b6cd --- /dev/null +++ b/source/compiler-core/slang-json-source-map-util.h @@ -0,0 +1,21 @@ +#ifndef SLANG_COMPILER_CORE_JSON_SOURCE_MAP_UTIL_H +#define SLANG_COMPILER_CORE_JSON_SOURCE_MAP_UTIL_H + +#include "slang-source-map.h" + +#include "slang-json-value.h" + +namespace Slang { + +struct JSONSourceMapUtil +{ + /// Decode from root into the source map + static SlangResult decode(JSONContainer* container, JSONValue root, DiagnosticSink* sink, RefPtr& out); + + /// Converts the source map contents into JSON + static SlangResult encode(SourceMap* sourceMap, JSONContainer* container, DiagnosticSink* sink, JSONValue& outValue); +}; + +} // namespace Slang + +#endif // SLANG_COMPILER_CORE_JSON_SOURCE_MAP_UTIL_H -- cgit v1.2.3