summaryrefslogtreecommitdiff
path: root/source/slang/slang-parser.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-parser.h')
-rw-r--r--source/slang/slang-parser.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/source/slang/slang-parser.h b/source/slang/slang-parser.h
new file mode 100644
index 000000000..98fd9ed65
--- /dev/null
+++ b/source/slang/slang-parser.h
@@ -0,0 +1,30 @@
+#ifndef SLANG_PARSER_H
+#define SLANG_PARSER_H
+
+#include "slang-lexer.h"
+#include "slang-compiler.h"
+#include "slang-syntax.h"
+
+namespace Slang
+{
+ // Parse a source file into an existing translation unit
+ void parseSourceFile(
+ TranslationUnitRequest* translationUnit,
+ TokenSpan const& tokens,
+ DiagnosticSink* sink,
+ RefPtr<Scope> const& outerScope);
+
+ RefPtr<Expr> parseTypeFromSourceFile(
+ Session* session,
+ TokenSpan const& tokens,
+ DiagnosticSink* sink,
+ RefPtr<Scope> const& outerScope,
+ NamePool* namePool,
+ SourceLanguage sourceLanguage);
+
+ RefPtr<ModuleDecl> populateBaseLanguageModule(
+ Session* session,
+ RefPtr<Scope> scope);
+}
+
+#endif