| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stdlib.h> | 5 #include <stdlib.h> |
| 6 | 6 |
| 7 #include "src/v8.h" | 7 #include "src/v8.h" |
| 8 | 8 |
| 9 #include "src/scopeinfo.h" | 9 #include "src/scopeinfo.h" |
| 10 #include "src/scopes.h" | 10 #include "src/scopes.h" |
| (...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 533 // ModuleInfo. | 533 // ModuleInfo. |
| 534 | 534 |
| 535 Handle<ModuleInfo> ModuleInfo::Create( | 535 Handle<ModuleInfo> ModuleInfo::Create( |
| 536 Isolate* isolate, Interface* interface, Scope* scope) { | 536 Isolate* isolate, Interface* interface, Scope* scope) { |
| 537 Handle<ModuleInfo> info = Allocate(isolate, interface->Length()); | 537 Handle<ModuleInfo> info = Allocate(isolate, interface->Length()); |
| 538 info->set_host_index(interface->Index()); | 538 info->set_host_index(interface->Index()); |
| 539 int i = 0; | 539 int i = 0; |
| 540 for (Interface::Iterator it = interface->iterator(); | 540 for (Interface::Iterator it = interface->iterator(); |
| 541 !it.done(); it.Advance(), ++i) { | 541 !it.done(); it.Advance(), ++i) { |
| 542 Variable* var = scope->LookupLocal(it.name()); | 542 Variable* var = scope->LookupLocal(it.name()); |
| 543 info->set_name(i, *it.name()); | 543 info->set_name(i, *(it.name()->string())); |
| 544 info->set_mode(i, var->mode()); | 544 info->set_mode(i, var->mode()); |
| 545 ASSERT((var->mode() == MODULE) == (it.interface()->IsModule())); | 545 ASSERT((var->mode() == MODULE) == (it.interface()->IsModule())); |
| 546 if (var->mode() == MODULE) { | 546 if (var->mode() == MODULE) { |
| 547 ASSERT(it.interface()->IsFrozen()); | 547 ASSERT(it.interface()->IsFrozen()); |
| 548 ASSERT(it.interface()->Index() >= 0); | 548 ASSERT(it.interface()->Index() >= 0); |
| 549 info->set_index(i, it.interface()->Index()); | 549 info->set_index(i, it.interface()->Index()); |
| 550 } else { | 550 } else { |
| 551 ASSERT(var->index() >= 0); | 551 ASSERT(var->index() >= 0); |
| 552 info->set_index(i, var->index()); | 552 info->set_index(i, var->index()); |
| 553 } | 553 } |
| 554 } | 554 } |
| 555 ASSERT(i == info->length()); | 555 ASSERT(i == info->length()); |
| 556 return info; | 556 return info; |
| 557 } | 557 } |
| 558 | 558 |
| 559 } } // namespace v8::internal | 559 } } // namespace v8::internal |
| OLD | NEW |