diff options
| -rw-r--r-- | tools/CMakeLists.txt | 10 | ||||
| -rw-r--r-- | tools/slang-cpp-extractor/cpp-extractor-main.cpp | 40 | ||||
| -rw-r--r-- | tools/slang-cpp-extractor/macro-writer.cpp | 22 | ||||
| -rw-r--r-- | tools/slang-cpp-extractor/macro-writer.h | 14 | ||||
| -rw-r--r-- | tools/slang-cpp-extractor/unit-test.h | 17 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/diagnostic-defs.h (renamed from tools/slang-cpp-extractor/diagnostic-defs.h) | 2 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/diagnostics.cpp (renamed from tools/slang-cpp-extractor/diagnostics.cpp) | 4 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/diagnostics.h (renamed from tools/slang-cpp-extractor/diagnostics.h) | 11 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/file-util.cpp (renamed from tools/slang-cpp-extractor/file-util.cpp) | 6 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/file-util.h (renamed from tools/slang-cpp-extractor/file-util.h) | 9 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/identifier-lookup.cpp (renamed from tools/slang-cpp-extractor/identifier-lookup.cpp) | 4 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/identifier-lookup.h (renamed from tools/slang-cpp-extractor/identifier-lookup.h) | 9 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/node-tree.cpp (renamed from tools/slang-cpp-extractor/node-tree.cpp) | 8 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/node-tree.h (renamed from tools/slang-cpp-extractor/node-tree.h) | 11 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/node.cpp (renamed from tools/slang-cpp-extractor/node.cpp) | 8 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/node.h (renamed from tools/slang-cpp-extractor/node.h) | 11 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/options.cpp (renamed from tools/slang-cpp-extractor/options.cpp) | 4 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/options.h (renamed from tools/slang-cpp-extractor/options.h) | 12 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/parser.cpp (renamed from tools/slang-cpp-extractor/parser.cpp) | 10 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/parser.h (renamed from tools/slang-cpp-extractor/parser.h) | 11 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/unit-test.cpp (renamed from tools/slang-cpp-extractor/unit-test.cpp) | 12 | ||||
| -rw-r--r-- | tools/slang-cpp-parser/unit-test.h | 14 |
22 files changed, 115 insertions, 134 deletions
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index 8438fe6b8..900101a39 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -49,6 +49,7 @@ generator( USE_FEWER_WARNINGS LINK_WITH_PRIVATE compiler-core + slang-cpp-parser ) generator(slang-embed) generator(slang-generate USE_FEWER_WARNINGS) @@ -68,6 +69,15 @@ generator( Threads::Threads ) +slang_add_target( + slang-cpp-parser + STATIC + USE_FEWER_WARNINGS + LINK_WITH_PRIVATE core compiler-core + INCLUDE_DIRECTORIES_PUBLIC . + FOLDER generators +) + # # Language Server # diff --git a/tools/slang-cpp-extractor/cpp-extractor-main.cpp b/tools/slang-cpp-extractor/cpp-extractor-main.cpp index a4573a8e4..bd7787162 100644 --- a/tools/slang-cpp-extractor/cpp-extractor-main.cpp +++ b/tools/slang-cpp-extractor/cpp-extractor-main.cpp @@ -1,27 +1,27 @@ // main.cpp -#include "../../source/compiler-core/slang-diagnostic-sink.h" -#include "../../source/compiler-core/slang-doc-extractor.h" -#include "../../source/compiler-core/slang-lexer.h" -#include "../../source/compiler-core/slang-name-convention-util.h" -#include "../../source/compiler-core/slang-name.h" -#include "../../source/compiler-core/slang-source-loc.h" -#include "../../source/core/slang-file-system.h" -#include "../../source/core/slang-io.h" -#include "../../source/core/slang-list.h" -#include "../../source/core/slang-secure-crt.h" -#include "../../source/core/slang-string-slice-pool.h" -#include "../../source/core/slang-string-util.h" -#include "../../source/core/slang-string.h" -#include "../../source/core/slang-writer.h" -#include "diagnostics.h" -#include "file-util.h" +#include "compiler-core/slang-diagnostic-sink.h" +#include "compiler-core/slang-doc-extractor.h" +#include "compiler-core/slang-lexer.h" +#include "compiler-core/slang-name-convention-util.h" +#include "compiler-core/slang-name.h" +#include "compiler-core/slang-source-loc.h" +#include "core/slang-file-system.h" +#include "core/slang-io.h" +#include "core/slang-list.h" +#include "core/slang-secure-crt.h" +#include "core/slang-string-slice-pool.h" +#include "core/slang-string-util.h" +#include "core/slang-string.h" +#include "core/slang-writer.h" #include "macro-writer.h" -#include "node.h" -#include "options.h" -#include "parser.h" #include "slang-com-helper.h" -#include "unit-test.h" +#include "slang-cpp-parser/diagnostics.h" +#include "slang-cpp-parser/file-util.h" +#include "slang-cpp-parser/node.h" +#include "slang-cpp-parser/options.h" +#include "slang-cpp-parser/parser.h" +#include "slang-cpp-parser/unit-test.h" #include <stdio.h> #include <stdlib.h> diff --git a/tools/slang-cpp-extractor/macro-writer.cpp b/tools/slang-cpp-extractor/macro-writer.cpp index 3f0e0a5fa..324a48efd 100644 --- a/tools/slang-cpp-extractor/macro-writer.cpp +++ b/tools/slang-cpp-extractor/macro-writer.cpp @@ -1,22 +1,20 @@ #include "macro-writer.h" -#include "../../source/core/slang-list.h" -#include "../../source/core/slang-string.h" +#include "compiler-core/slang-diagnostic-sink.h" +#include "core/slang-io.h" +#include "core/slang-list.h" +#include "core/slang-string.h" +#include "core/slang-writer.h" #include "slang-com-helper.h" -// #include "../../source/core/slang-string-util.h" -#include "../../source/compiler-core/slang-diagnostic-sink.h" -#include "../../source/core/slang-io.h" -#include "../../source/core/slang-writer.h" -// #include "../../source/compiler-core/slang-name.h" - -#include "diagnostics.h" -#include "file-util.h" -#include "node-tree.h" -#include "options.h" +#include "slang-cpp-parser/diagnostics.h" +#include "slang-cpp-parser/file-util.h" +#include "slang-cpp-parser/node-tree.h" +#include "slang-cpp-parser/options.h" namespace CppExtract { using namespace Slang; +using namespace CppParse; SLANG_FORCE_INLINE static void _indent(Index indentCount, StringBuilder& out) { diff --git a/tools/slang-cpp-extractor/macro-writer.h b/tools/slang-cpp-extractor/macro-writer.h index 0cbf85fb3..aa23c96ef 100644 --- a/tools/slang-cpp-extractor/macro-writer.h +++ b/tools/slang-cpp-extractor/macro-writer.h @@ -1,14 +1,14 @@ -#ifndef CPP_EXTRACT_MACRO_WRITER_H -#define CPP_EXTRACT_MACRO_WRITER_H +#pragma once -#include "../../source/compiler-core/slang-diagnostic-sink.h" -#include "diagnostics.h" -#include "node-tree.h" -#include "options.h" +#include "compiler-core/slang-diagnostic-sink.h" +#include "slang-cpp-parser/diagnostics.h" +#include "slang-cpp-parser/node-tree.h" +#include "slang-cpp-parser/options.h" namespace CppExtract { using namespace Slang; +using namespace CppParse; /* A class that writes out macros that define type hierarchies, as well as fields of types */ class MacroWriter @@ -39,5 +39,3 @@ protected: }; } // namespace CppExtract - -#endif diff --git a/tools/slang-cpp-extractor/unit-test.h b/tools/slang-cpp-extractor/unit-test.h deleted file mode 100644 index fd3ab1328..000000000 --- a/tools/slang-cpp-extractor/unit-test.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef CPP_EXTRACT_UNIT_TEST_H -#define CPP_EXTRACT_UNIT_TEST_H - -#include "diagnostics.h" - -namespace CppExtract -{ -using namespace Slang; - -struct UnitTestUtil -{ - static SlangResult run(); -}; - -} // namespace CppExtract - -#endif diff --git a/tools/slang-cpp-extractor/diagnostic-defs.h b/tools/slang-cpp-parser/diagnostic-defs.h index 03ba88dd3..cba5a8e6f 100644 --- a/tools/slang-cpp-extractor/diagnostic-defs.h +++ b/tools/slang-cpp-parser/diagnostic-defs.h @@ -14,7 +14,7 @@ // for any arguments. #ifndef DIAGNOSTIC -#error Need to #define DIAGNOSTIC(...) before including "slang-cpp-extractor-diagnostics-defs.h" +#error Need to #define DIAGNOSTIC(...) before including "slang-cpp-parser/diagnostics-defs.h" #define DIAGNOSTIC(id, severity, name, messageFormat) /* */ #endif diff --git a/tools/slang-cpp-extractor/diagnostics.cpp b/tools/slang-cpp-parser/diagnostics.cpp index 782e5e9da..10455a9ff 100644 --- a/tools/slang-cpp-extractor/diagnostics.cpp +++ b/tools/slang-cpp-parser/diagnostics.cpp @@ -1,6 +1,6 @@ #include "diagnostics.h" -namespace CppExtract +namespace CppParse { namespace CPPDiagnostics @@ -12,4 +12,4 @@ using namespace Slang; #include "diagnostic-defs.h" } // namespace CPPDiagnostics -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/diagnostics.h b/tools/slang-cpp-parser/diagnostics.h index cb3bd342b..4db70fbca 100644 --- a/tools/slang-cpp-extractor/diagnostics.h +++ b/tools/slang-cpp-parser/diagnostics.h @@ -1,9 +1,8 @@ -#ifndef CPP_EXTRACT_DIAGNOSTICS_H -#define CPP_EXTRACT_DIAGNOSTICS_H +#pragma once -#include "../../source/slang/slang-diagnostics.h" +#include "slang/slang-diagnostics.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -14,6 +13,4 @@ namespace CPPDiagnostics #include "diagnostic-defs.h" } // namespace CPPDiagnostics -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/file-util.cpp b/tools/slang-cpp-parser/file-util.cpp index 2980a22ce..9e7c60755 100644 --- a/tools/slang-cpp-extractor/file-util.cpp +++ b/tools/slang-cpp-parser/file-util.cpp @@ -1,8 +1,8 @@ #include "file-util.h" -#include "../../source/core/slang-io.h" +#include "core/slang-io.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -98,4 +98,4 @@ struct DiagnosticReporter } } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/file-util.h b/tools/slang-cpp-parser/file-util.h index 201825973..735758384 100644 --- a/tools/slang-cpp-extractor/file-util.h +++ b/tools/slang-cpp-parser/file-util.h @@ -1,9 +1,8 @@ -#ifndef CPP_EXTRACT_FILE_UTIL_H -#define CPP_EXTRACT_FILE_UTIL_H +#pragma once #include "diagnostics.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -29,6 +28,4 @@ struct FileUtil static void indent(Index indentCount, StringBuilder& out); }; -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/identifier-lookup.cpp b/tools/slang-cpp-parser/identifier-lookup.cpp index c7255aa1f..3a704a454 100644 --- a/tools/slang-cpp-extractor/identifier-lookup.cpp +++ b/tools/slang-cpp-parser/identifier-lookup.cpp @@ -1,6 +1,6 @@ #include "identifier-lookup.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -174,4 +174,4 @@ void IdentifierLookup::initDefault(const UnownedStringSlice& markPrefix) } } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/identifier-lookup.h b/tools/slang-cpp-parser/identifier-lookup.h index f26220f1f..226d00667 100644 --- a/tools/slang-cpp-extractor/identifier-lookup.h +++ b/tools/slang-cpp-parser/identifier-lookup.h @@ -1,9 +1,8 @@ -#ifndef CPP_EXTRACT_IDENTIFIER_LOOKUP_H -#define CPP_EXTRACT_IDENTIFIER_LOOKUP_H +#pragma once #include "diagnostics.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -119,6 +118,4 @@ SLANG_FORCE_INLINE bool hasFlag(IdentifierStyle style, IdentifierFlag::Enum flag return (getFlags(style) & flag) != 0; } -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/node-tree.cpp b/tools/slang-cpp-parser/node-tree.cpp index 6b543ad31..e48ce9779 100644 --- a/tools/slang-cpp-extractor/node-tree.cpp +++ b/tools/slang-cpp-parser/node-tree.cpp @@ -1,11 +1,11 @@ #include "node-tree.h" -#include "../../source/compiler-core/slang-name-convention-util.h" -#include "../../source/core/slang-io.h" +#include "compiler-core/slang-name-convention-util.h" +#include "core/slang-io.h" #include "identifier-lookup.h" #include "options.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -173,4 +173,4 @@ SlangResult NodeTree::calcDerivedTypes(DiagnosticSink* sink) } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/node-tree.h b/tools/slang-cpp-parser/node-tree.h index f1547dbc1..8911d0d71 100644 --- a/tools/slang-cpp-extractor/node-tree.h +++ b/tools/slang-cpp-parser/node-tree.h @@ -1,12 +1,11 @@ -#ifndef CPP_EXTRACT_NODE_TREE_H -#define CPP_EXTRACT_NODE_TREE_H +#pragma once -#include "../../source/compiler-core/slang-lexer.h" +#include "compiler-core/slang-lexer.h" #include "diagnostics.h" #include "identifier-lookup.h" #include "node.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -99,6 +98,4 @@ protected: List<RefPtr<SourceOrigin>> m_sourceOrigins; }; -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/node.cpp b/tools/slang-cpp-parser/node.cpp index 4598e34c9..16484ead3 100644 --- a/tools/slang-cpp-extractor/node.cpp +++ b/tools/slang-cpp-parser/node.cpp @@ -1,10 +1,10 @@ #include "node.h" -#include "../../source/core/slang-string-escape-util.h" -#include "../../source/core/slang-string-util.h" +#include "core/slang-string-escape-util.h" +#include "core/slang-string-util.h" #include "file-util.h" -namespace CppExtract +namespace CppParse { // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Node Impl @@ -697,4 +697,4 @@ void ClassLikeNode::dump(int indentCount, StringBuilder& out) out << "}\n"; } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/node.h b/tools/slang-cpp-parser/node.h index 2c15e460d..4dad9473e 100644 --- a/tools/slang-cpp-extractor/node.h +++ b/tools/slang-cpp-parser/node.h @@ -1,10 +1,9 @@ -#ifndef CPP_EXTRACT_NODE_H -#define CPP_EXTRACT_NODE_H +#pragma once -#include "../../source/compiler-core/slang-doc-extractor.h" +#include "compiler-core/slang-doc-extractor.h" #include "diagnostics.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -420,6 +419,4 @@ T* as(Node* node) return (node && T::isOfKind(node->m_kind)) ? static_cast<T*>(node) : nullptr; } -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/options.cpp b/tools/slang-cpp-parser/options.cpp index 17ff5eebc..8be319e7b 100644 --- a/tools/slang-cpp-extractor/options.cpp +++ b/tools/slang-cpp-parser/options.cpp @@ -2,7 +2,7 @@ #include "diagnostics.h" -namespace CppExtract +namespace CppParse { SlangResult OptionsParser::_parseArgFlag(const char* option, bool& outFlag) @@ -150,4 +150,4 @@ SlangResult OptionsParser::parse( return SLANG_OK; } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/options.h b/tools/slang-cpp-parser/options.h index 8231d5e3b..c1cbb1a27 100644 --- a/tools/slang-cpp-extractor/options.h +++ b/tools/slang-cpp-parser/options.h @@ -1,9 +1,8 @@ -#ifndef CPP_EXTRACT_OPTIONS_H -#define CPP_EXTRACT_OPTIONS_H +#pragma once -#include "../../source/slang/slang-diagnostics.h" +#include "slang/slang-diagnostics.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -61,7 +60,4 @@ struct OptionsParser DiagnosticSink* m_sink; }; - -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/parser.cpp b/tools/slang-cpp-parser/parser.cpp index 3a4891829..1edc38ac7 100644 --- a/tools/slang-cpp-extractor/parser.cpp +++ b/tools/slang-cpp-parser/parser.cpp @@ -1,12 +1,12 @@ #include "parser.h" -#include "../../source/compiler-core/slang-name-convention-util.h" -#include "../../source/core/slang-io.h" -#include "../../source/core/slang-string-util.h" +#include "compiler-core/slang-name-convention-util.h" +#include "core/slang-io.h" +#include "core/slang-string-util.h" #include "identifier-lookup.h" #include "options.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -2258,4 +2258,4 @@ SlangResult Parser::parse(SourceOrigin* sourceOrigin, const Options* options) } } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/parser.h b/tools/slang-cpp-parser/parser.h index 605a0d8be..519ad6935 100644 --- a/tools/slang-cpp-extractor/parser.h +++ b/tools/slang-cpp-parser/parser.h @@ -1,13 +1,12 @@ -#ifndef CPP_EXTRACT_PARSER_H -#define CPP_EXTRACT_PARSER_H +#pragma once -#include "../../source/compiler-core/slang-lexer.h" +#include "compiler-core/slang-lexer.h" #include "diagnostics.h" #include "identifier-lookup.h" #include "node-tree.h" #include "node.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -110,6 +109,4 @@ protected: const Options* m_options; }; -} // namespace CppExtract - -#endif +} // namespace CppParse diff --git a/tools/slang-cpp-extractor/unit-test.cpp b/tools/slang-cpp-parser/unit-test.cpp index 3c0edac3c..70851fd7c 100644 --- a/tools/slang-cpp-extractor/unit-test.cpp +++ b/tools/slang-cpp-parser/unit-test.cpp @@ -1,15 +1,15 @@ #include "unit-test.h" -#include "../../source/compiler-core/slang-lexer.h" -#include "../../source/compiler-core/slang-name-convention-util.h" -#include "../../source/compiler-core/slang-source-loc.h" -#include "../../source/core/slang-io.h" +#include "compiler-core/slang-lexer.h" +#include "compiler-core/slang-name-convention-util.h" +#include "compiler-core/slang-source-loc.h" +#include "core/slang-io.h" #include "identifier-lookup.h" #include "node-tree.h" #include "options.h" #include "parser.h" -namespace CppExtract +namespace CppParse { using namespace Slang; @@ -124,4 +124,4 @@ static const char someSource[] = "class ISomeInterface\n" return SLANG_OK; } -} // namespace CppExtract +} // namespace CppParse diff --git a/tools/slang-cpp-parser/unit-test.h b/tools/slang-cpp-parser/unit-test.h new file mode 100644 index 000000000..e8d1b53b2 --- /dev/null +++ b/tools/slang-cpp-parser/unit-test.h @@ -0,0 +1,14 @@ +#pragma once + +#include "diagnostics.h" + +namespace CppParse +{ +using namespace Slang; + +struct UnitTestUtil +{ + static SlangResult run(); +}; + +} // namespace CppParse |
