OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 "src/ast/modules.h" | 5 #include "src/ast/modules.h" |
6 | 6 |
7 #include "src/ast/ast-value-factory.h" | 7 #include "src/ast/ast-value-factory.h" |
8 | 8 |
9 namespace v8 { | 9 namespace v8 { |
10 namespace internal { | 10 namespace internal { |
11 | 11 |
12 | 12 |
13 void ModuleDescriptor::AddLocalExport(const AstRawString* export_name, | 13 void ModuleDescriptor::AddLocalExport(const AstRawString* export_name, |
14 const AstRawString* local_name, | 14 const AstRawString* local_name, |
15 Zone* zone, bool* ok) { | 15 Zone* zone, bool* ok) { |
16 DCHECK(!IsFrozen()); | |
17 void* key = const_cast<AstRawString*>(export_name); | 16 void* key = const_cast<AstRawString*>(export_name); |
18 | 17 |
19 ZoneAllocationPolicy allocator(zone); | 18 ZoneAllocationPolicy allocator(zone); |
20 | 19 |
21 if (exports_ == nullptr) { | 20 if (exports_ == nullptr) { |
22 exports_ = new (zone->New(sizeof(ZoneHashMap))) | 21 exports_ = new (zone->New(sizeof(ZoneHashMap))) |
23 ZoneHashMap(ZoneHashMap::PointersMatch, | 22 ZoneHashMap(ZoneHashMap::PointersMatch, |
24 ZoneHashMap::kDefaultHashMapCapacity, allocator); | 23 ZoneHashMap::kDefaultHashMapCapacity, allocator); |
25 } | 24 } |
26 | 25 |
(...skipping 23 matching lines...) Expand all Loading... |
50 const AstRawString* export_name, Zone* zone) { | 49 const AstRawString* export_name, Zone* zone) { |
51 if (exports_ == nullptr) return nullptr; | 50 if (exports_ == nullptr) return nullptr; |
52 ZoneHashMap::Entry* entry = exports_->Lookup( | 51 ZoneHashMap::Entry* entry = exports_->Lookup( |
53 const_cast<AstRawString*>(export_name), export_name->hash()); | 52 const_cast<AstRawString*>(export_name), export_name->hash()); |
54 if (entry == nullptr) return nullptr; | 53 if (entry == nullptr) return nullptr; |
55 DCHECK_NOT_NULL(entry->value); | 54 DCHECK_NOT_NULL(entry->value); |
56 return static_cast<const AstRawString*>(entry->value); | 55 return static_cast<const AstRawString*>(entry->value); |
57 } | 56 } |
58 } // namespace internal | 57 } // namespace internal |
59 } // namespace v8 | 58 } // namespace v8 |
OLD | NEW |