summaryrefslogtreecommitdiff
path: root/deps/v8/src/torque/torque-compiler.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/torque/torque-compiler.h')
-rw-r--r--deps/v8/src/torque/torque-compiler.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/deps/v8/src/torque/torque-compiler.h b/deps/v8/src/torque/torque-compiler.h
index ee8cf19b1a..a97df1906f 100644
--- a/deps/v8/src/torque/torque-compiler.h
+++ b/deps/v8/src/torque/torque-compiler.h
@@ -7,6 +7,7 @@
#include "src/torque/ast.h"
#include "src/torque/contextual.h"
+#include "src/torque/server-data.h"
#include "src/torque/source-positions.h"
#include "src/torque/utils.h"
@@ -19,12 +20,27 @@ struct TorqueCompilerOptions {
bool verbose;
bool collect_language_server_data;
bool abort_on_lint_errors;
+};
+
+struct TorqueCompilerResult {
+ // Map translating SourceIds to filenames. This field is
+ // set on errors, so the SourcePosition of the error can be
+ // resolved.
+ SourceFileMap source_file_map;
+
+ // Eagerly collected data needed for the LanguageServer.
+ // Set the corresponding options flag to enable.
+ LanguageServerData language_server_data;
- static TorqueCompilerOptions Default() { return {"", false, false, false}; }
+ // If any error occurred during either parsing or compilation,
+ // this field will be set.
+ base::Optional<TorqueError> error;
};
-void CompileTorque(std::vector<std::string> files,
- TorqueCompilerOptions = TorqueCompilerOptions::Default());
+V8_EXPORT_PRIVATE TorqueCompilerResult
+CompileTorque(const std::string& source, TorqueCompilerOptions options);
+TorqueCompilerResult CompileTorque(std::vector<std::string> files,
+ TorqueCompilerOptions options);
} // namespace torque
} // namespace internal