Index: src/ast/scopeinfo.cc |
diff --git a/src/ast/scopeinfo.cc b/src/ast/scopeinfo.cc |
index 3bd6cc8076f2892d74739002c13c3d35e67db722..a8614bdd5b10f9525b7378adb95258f910be32b6 100644 |
--- a/src/ast/scopeinfo.cc |
+++ b/src/ast/scopeinfo.cc |
@@ -517,7 +517,7 @@ ScopeInfo* ScopeInfo::OuterScopeInfo() { |
ModuleInfo* ScopeInfo::ModuleDescriptorInfo() { |
DCHECK(scope_type() == MODULE_SCOPE); |
- return static_cast<ModuleInfo*>(get(ModuleInfoIndex())); |
+ return ModuleInfo::cast(get(ModuleInfoIndex())); |
} |
String* ScopeInfo::ParameterName(int var) { |
@@ -811,12 +811,26 @@ void ScopeInfo::Print() { |
PrintList("context slots", Context::MIN_CONTEXT_SLOTS, |
ContextLocalNamesIndex(), |
ContextLocalNamesIndex() + ContextLocalCount(), this); |
+ // TODO(neis): Print module stuff if present. |
} |
PrintF("}\n"); |
} |
#endif // DEBUG |
+Handle<ModuleInfoEntry> ModuleInfoEntry::New(Isolate* isolate, |
+ Handle<Object> export_name, |
+ Handle<Object> local_name, |
+ Handle<Object> import_name, |
+ Handle<Object> module_request) { |
+ Handle<ModuleInfoEntry> result = isolate->factory()->NewModuleInfoEntry(); |
+ result->set(kExportNameIndex, *export_name); |
+ result->set(kLocalNameIndex, *local_name); |
+ result->set(kImportNameIndex, *import_name); |
+ result->set(kModuleRequestIndex, *module_request); |
+ return result; |
+} |
+ |
Handle<ModuleInfo> ModuleInfo::New(Isolate* isolate, ModuleDescriptor* descr) { |
// Serialize special exports. |
Handle<FixedArray> special_exports = |