OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 (function(global, utils) { | 5 (function(global, utils) { |
6 | 6 |
7 "use strict"; | 7 "use strict"; |
8 | 8 |
9 %CheckIsBootstrapping(); | 9 %CheckIsBootstrapping(); |
10 | 10 |
11 // ------------------------------------------------------------------- | 11 // ------------------------------------------------------------------- |
12 // Imports | 12 // Imports |
13 | 13 |
14 var GlobalObject = global.Object; | 14 var GlobalObject = global.Object; |
15 var GlobalSymbol = global.Symbol; | 15 var GlobalSymbol = global.Symbol; |
16 var hasInstanceSymbol = utils.ImportNow("has_instance_symbol"); | 16 var hasInstanceSymbol = utils.ImportNow("has_instance_symbol"); |
17 var isConcatSpreadableSymbol = | 17 var isConcatSpreadableSymbol = |
18 utils.ImportNow("is_concat_spreadable_symbol"); | 18 utils.ImportNow("is_concat_spreadable_symbol"); |
19 var isRegExpSymbol = utils.ImportNow("is_regexp_symbol"); | 19 var isRegExpSymbol = utils.ImportNow("is_regexp_symbol"); |
20 var iteratorSymbol = utils.ImportNow("iterator_symbol"); | 20 var iteratorSymbol = utils.ImportNow("iterator_symbol"); |
21 var MakeTypeError; | 21 var MakeTypeError; |
| 22 var matchSymbol = utils.ImportNow("match_symbol"); |
22 var ObjectGetOwnPropertyKeys; | 23 var ObjectGetOwnPropertyKeys; |
| 24 var replaceSymbol = utils.ImportNow("replace_symbol"); |
| 25 var searchSymbol = utils.ImportNow("search_symbol"); |
| 26 var splitSymbol = utils.ImportNow("split_symbol"); |
23 var toPrimitiveSymbol = utils.ImportNow("to_primitive_symbol"); | 27 var toPrimitiveSymbol = utils.ImportNow("to_primitive_symbol"); |
24 var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol"); | 28 var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol"); |
25 var unscopablesSymbol = utils.ImportNow("unscopables_symbol"); | 29 var unscopablesSymbol = utils.ImportNow("unscopables_symbol"); |
26 | 30 |
27 utils.Import(function(from) { | 31 utils.Import(function(from) { |
28 MakeTypeError = from.MakeTypeError; | 32 MakeTypeError = from.MakeTypeError; |
29 ObjectGetOwnPropertyKeys = from.ObjectGetOwnPropertyKeys; | 33 ObjectGetOwnPropertyKeys = from.ObjectGetOwnPropertyKeys; |
30 }); | 34 }); |
31 | 35 |
32 // ------------------------------------------------------------------- | 36 // ------------------------------------------------------------------- |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 // ------------------------------------------------------------------- | 93 // ------------------------------------------------------------------- |
90 | 94 |
91 %FunctionSetPrototype(GlobalSymbol, new GlobalObject()); | 95 %FunctionSetPrototype(GlobalSymbol, new GlobalObject()); |
92 | 96 |
93 utils.InstallConstants(GlobalSymbol, [ | 97 utils.InstallConstants(GlobalSymbol, [ |
94 // TODO(rossberg): expose when implemented. | 98 // TODO(rossberg): expose when implemented. |
95 // "hasInstance", hasInstanceSymbol, | 99 // "hasInstance", hasInstanceSymbol, |
96 // "isConcatSpreadable", isConcatSpreadableSymbol, | 100 // "isConcatSpreadable", isConcatSpreadableSymbol, |
97 // "isRegExp", isRegExpSymbol, | 101 // "isRegExp", isRegExpSymbol, |
98 "iterator", iteratorSymbol, | 102 "iterator", iteratorSymbol, |
| 103 // TODO(yangguo): expose when implemented. |
| 104 // "match", matchSymbol, |
| 105 // "replace", replaceSymbol, |
| 106 // "search", searchSymbol, |
| 107 // "split, splitSymbol, |
99 "toPrimitive", toPrimitiveSymbol, | 108 "toPrimitive", toPrimitiveSymbol, |
100 // TODO(dslomov, caitp): Currently defined in harmony-tostring.js --- | 109 // TODO(dslomov, caitp): Currently defined in harmony-tostring.js --- |
101 // Move here when shipping | 110 // Move here when shipping |
102 // "toStringTag", toStringTagSymbol, | 111 // "toStringTag", toStringTagSymbol, |
103 "unscopables", unscopablesSymbol, | 112 "unscopables", unscopablesSymbol, |
104 ]); | 113 ]); |
105 | 114 |
106 utils.InstallFunctions(GlobalSymbol, DONT_ENUM, [ | 115 utils.InstallFunctions(GlobalSymbol, DONT_ENUM, [ |
107 "for", SymbolFor, | 116 "for", SymbolFor, |
108 "keyFor", SymbolKeyFor | 117 "keyFor", SymbolKeyFor |
(...skipping 18 matching lines...) Expand all Loading... |
127 ]); | 136 ]); |
128 | 137 |
129 // ------------------------------------------------------------------- | 138 // ------------------------------------------------------------------- |
130 // Exports | 139 // Exports |
131 | 140 |
132 utils.Export(function(to) { | 141 utils.Export(function(to) { |
133 to.SymbolToString = SymbolToString; | 142 to.SymbolToString = SymbolToString; |
134 }) | 143 }) |
135 | 144 |
136 }) | 145 }) |
OLD | NEW |