OLD | NEW |
1 // Copyright 2009 the V8 project authors. All rights reserved. | 1 // Copyright 2009 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 GlobalJSON = global.JSON; | 14 var GlobalJSON = global.JSON; |
15 var InternalArray = utils.InternalArray; | 15 var InternalArray = utils.InternalArray; |
16 var MathMax; | |
17 var MathMin; | |
18 var ObjectHasOwnProperty; | 16 var ObjectHasOwnProperty; |
19 var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol"); | 17 var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol"); |
20 | 18 |
21 utils.Import(function(from) { | 19 utils.Import(function(from) { |
22 MathMax = from.MathMax; | |
23 MathMin = from.MathMin; | |
24 ObjectHasOwnProperty = from.ObjectHasOwnProperty; | 20 ObjectHasOwnProperty = from.ObjectHasOwnProperty; |
25 }); | 21 }); |
26 | 22 |
27 // ------------------------------------------------------------------- | 23 // ------------------------------------------------------------------- |
28 | 24 |
29 function Revive(holder, name, reviver) { | 25 function Revive(holder, name, reviver) { |
30 var val = holder[name]; | 26 var val = holder[name]; |
31 if (IS_OBJECT(val)) { | 27 if (IS_OBJECT(val)) { |
32 if (IS_ARRAY(val)) { | 28 if (IS_ARRAY(val)) { |
33 var length = val.length; | 29 var length = val.length; |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
208 if (IS_OBJECT(space)) { | 204 if (IS_OBJECT(space)) { |
209 // Unwrap 'space' if it is wrapped | 205 // Unwrap 'space' if it is wrapped |
210 if (IS_NUMBER_WRAPPER(space)) { | 206 if (IS_NUMBER_WRAPPER(space)) { |
211 space = TO_NUMBER(space); | 207 space = TO_NUMBER(space); |
212 } else if (IS_STRING_WRAPPER(space)) { | 208 } else if (IS_STRING_WRAPPER(space)) { |
213 space = TO_STRING(space); | 209 space = TO_STRING(space); |
214 } | 210 } |
215 } | 211 } |
216 var gap; | 212 var gap; |
217 if (IS_NUMBER(space)) { | 213 if (IS_NUMBER(space)) { |
218 space = MathMax(0, MathMin(TO_INTEGER(space), 10)); | 214 space = MAX_SIMPLE(0, MIN_SIMPLE(TO_INTEGER(space), 10)); |
219 gap = %_SubString(" ", 0, space); | 215 gap = %_SubString(" ", 0, space); |
220 } else if (IS_STRING(space)) { | 216 } else if (IS_STRING(space)) { |
221 if (space.length > 10) { | 217 if (space.length > 10) { |
222 gap = %_SubString(space, 0, 10); | 218 gap = %_SubString(space, 0, 10); |
223 } else { | 219 } else { |
224 gap = space; | 220 gap = space; |
225 } | 221 } |
226 } else { | 222 } else { |
227 gap = ""; | 223 gap = ""; |
228 } | 224 } |
(...skipping 16 matching lines...) Expand all Loading... |
245 function JsonSerializeAdapter(key, object) { | 241 function JsonSerializeAdapter(key, object) { |
246 var holder = {}; | 242 var holder = {}; |
247 holder[key] = object; | 243 holder[key] = object; |
248 // No need to pass the actual holder since there is no replacer function. | 244 // No need to pass the actual holder since there is no replacer function. |
249 return JSONSerialize(key, holder, UNDEFINED, new InternalArray(), "", ""); | 245 return JSONSerialize(key, holder, UNDEFINED, new InternalArray(), "", ""); |
250 } | 246 } |
251 | 247 |
252 %InstallToContext(["json_serialize_adapter", JsonSerializeAdapter]); | 248 %InstallToContext(["json_serialize_adapter", JsonSerializeAdapter]); |
253 | 249 |
254 }) | 250 }) |
OLD | NEW |