diff options
Diffstat (limited to 'deps/v8/src/torque/torque.cc')
-rw-r--r-- | deps/v8/src/torque/torque.cc | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/deps/v8/src/torque/torque.cc b/deps/v8/src/torque/torque.cc index fd47251d59..05dabdccca 100644 --- a/deps/v8/src/torque/torque.cc +++ b/deps/v8/src/torque/torque.cc @@ -9,7 +9,6 @@ #include "src/torque/declaration-visitor.h" #include "src/torque/global-context.h" #include "src/torque/implementation-visitor.h" -#include "src/torque/scope.h" #include "src/torque/torque-parser.h" #include "src/torque/type-oracle.h" #include "src/torque/types.h" @@ -51,31 +50,30 @@ int WrappedMain(int argc, const char** argv) { ParseTorque(file_content); } - GlobalContext global_context(std::move(CurrentAst::Get())); - if (verbose) global_context.SetVerbose(); - TypeOracle::Scope type_oracle(global_context.declarations()); + GlobalContext::Scope global_context(std::move(CurrentAst::Get())); + if (verbose) GlobalContext::SetVerbose(); + TypeOracle::Scope type_oracle; if (output_directory.length() != 0) { - { - DeclarationVisitor visitor(global_context); + DeclarationVisitor().Visit(GlobalContext::Get().ast()); - visitor.Visit(global_context.ast()); - - std::string output_header_path = output_directory; - output_header_path += "/builtin-definitions-from-dsl.h"; - visitor.GenerateHeader(output_header_path); + ImplementationVisitor visitor; + for (Namespace* n : GlobalContext::Get().GetNamespaces()) { + visitor.BeginNamespaceFile(n); } - ImplementationVisitor visitor(global_context); - for (auto& module : global_context.GetModules()) { - visitor.BeginModuleFile(module.second.get()); - } + visitor.VisitAllDeclarables(); + + std::string output_header_path = output_directory; + output_header_path += "/builtin-definitions-from-dsl.h"; + visitor.GenerateBuiltinDefinitions(output_header_path); - visitor.Visit(global_context.ast()); + output_header_path = output_directory + "/class-definitions-from-dsl.h"; + visitor.GenerateClassDefinitions(output_header_path); - for (auto& module : global_context.GetModules()) { - visitor.EndModuleFile(module.second.get()); - visitor.GenerateImplementation(output_directory, module.second.get()); + for (Namespace* n : GlobalContext::Get().GetNamespaces()) { + visitor.EndNamespaceFile(n); + visitor.GenerateImplementation(output_directory, n); } } |