| OLD | NEW |
| 1 // Copyright 2006-2012 the V8 project authors. All rights reserved. | 1 // Copyright 2006-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 (function(global, utils) { | 5 (function(global, utils) { |
| 6 "use strict"; | 6 "use strict"; |
| 7 | 7 |
| 8 // ---------------------------------------------------------------------------- | 8 // ---------------------------------------------------------------------------- |
| 9 // Imports | 9 // Imports |
| 10 | 10 |
| 11 macro SIMD_TYPES(FUNCTION) |
| 12 FUNCTION(FLOAT32X4_TYPE, Float32x4, float32x4) |
| 13 FUNCTION(INT32X4_TYPE, Int32x4, int32x4) |
| 14 FUNCTION(INT16X8_TYPE, Int16x8, int16x8) |
| 15 FUNCTION(INT8X16_TYPE, Int8x16, int8x16) |
| 16 FUNCTION(UINT32X4_TYPE, Uint32x4, uint32x4) |
| 17 FUNCTION(UINT16X8_TYPE, Uint16x8, uint16x8) |
| 18 FUNCTION(UINT8X16_TYPE, Uint8x16, uint8x16) |
| 19 FUNCTION(BOOL32X4_TYPE, Bool32x4, bool32x4) |
| 20 FUNCTION(BOOL16X8_TYPE, Bool16x8, bool16x8) |
| 21 FUNCTION(BOOL8X16_TYPE, Bool8x16, bool8x16) |
| 22 endmacro |
| 23 |
| 11 var FunctionSourceString; | 24 var FunctionSourceString; |
| 12 var GlobalArray = global.Array; | 25 var GlobalArray = global.Array; |
| 13 var IsNaN = global.isNaN; | 26 var IsNaN = global.isNaN; |
| 14 var JSONStringify = global.JSON.stringify; | 27 var JSONStringify = global.JSON.stringify; |
| 15 var MathMin = global.Math.min; | 28 var MathMin = global.Math.min; |
| 16 var promiseStatusSymbol = utils.GetPrivateSymbol("promise_status_symbol"); | 29 var promiseStatusSymbol = utils.GetPrivateSymbol("promise_status_symbol"); |
| 17 var promiseValueSymbol = utils.GetPrivateSymbol("promise_value_symbol"); | 30 var promiseValueSymbol = utils.GetPrivateSymbol("promise_value_symbol"); |
| 18 var ToBoolean; | 31 var ToBoolean; |
| 19 var ToString; | 32 var ToString; |
| 20 | 33 |
| 34 macro SIMD_DECLARE_TOSTRING(SIMD, Simd, simd) |
| 35 var SimdToString; |
| 36 endmacro |
| 37 |
| 38 SIMD_TYPES(SIMD_DECLARE_TOSTRING) |
| 39 |
| 40 macro SIMD_IMPORT_TOSTRING(SIMD, Simd, simd) |
| 41 SimdToString = from.SimdToString; |
| 42 endmacro |
| 43 |
| 21 utils.Import(function(from) { | 44 utils.Import(function(from) { |
| 22 FunctionSourceString = from.FunctionSourceString; | 45 FunctionSourceString = from.FunctionSourceString; |
| 23 ToBoolean = from.ToBoolean; | 46 ToBoolean = from.ToBoolean; |
| 24 ToString = from.ToString; | 47 ToString = from.ToString; |
| 48 |
| 49 SIMD_TYPES(SIMD_IMPORT_TOSTRING) |
| 25 }); | 50 }); |
| 26 | 51 |
| 27 // ---------------------------------------------------------------------------- | 52 // ---------------------------------------------------------------------------- |
| 28 | 53 |
| 29 // Mirror hierarchy: | 54 // Mirror hierarchy: |
| 30 // - Mirror | 55 // - Mirror |
| 31 // - ValueMirror | 56 // - ValueMirror |
| 32 // - UndefinedMirror | 57 // - UndefinedMirror |
| 33 // - NullMirror | 58 // - NullMirror |
| 34 // - BooleanMirror | 59 // - BooleanMirror |
| 35 // - NumberMirror | 60 // - NumberMirror |
| 36 // - StringMirror | 61 // - StringMirror |
| 37 // - SymbolMirror | 62 // - SymbolMirror |
| 63 // - Float32x4Mirror |
| 64 // - Int32x4Mirror |
| 65 // - Int16x8Mirror |
| 66 // - Int8x16Mirror |
| 67 // - Uint32x4Mirror |
| 68 // - Uint16x8Mirror |
| 69 // - Uint8x16Mirror |
| 70 // - Bool32x4Mirror |
| 71 // - Bool16x8Mirror |
| 72 // - Bool8x16Mirror |
| 38 // - ObjectMirror | 73 // - ObjectMirror |
| 39 // - FunctionMirror | 74 // - FunctionMirror |
| 40 // - UnresolvedFunctionMirror | 75 // - UnresolvedFunctionMirror |
| 41 // - ArrayMirror | 76 // - ArrayMirror |
| 42 // - DateMirror | 77 // - DateMirror |
| 43 // - RegExpMirror | 78 // - RegExpMirror |
| 44 // - ErrorMirror | 79 // - ErrorMirror |
| 45 // - PromiseMirror | 80 // - PromiseMirror |
| 46 // - MapMirror | 81 // - MapMirror |
| 47 // - SetMirror | 82 // - SetMirror |
| 48 // - IteratorMirror | 83 // - IteratorMirror |
| 49 // - GeneratorMirror | 84 // - GeneratorMirror |
| 50 // - PropertyMirror | 85 // - PropertyMirror |
| 51 // - InternalPropertyMirror | 86 // - InternalPropertyMirror |
| 52 // - FrameMirror | 87 // - FrameMirror |
| 53 // - ScriptMirror | 88 // - ScriptMirror |
| 54 // - ScopeMirror | 89 // - ScopeMirror |
| 55 | 90 |
| 91 |
| 92 macro SIMD_DEFINE_TYPE(SIMD, Simd, simd) |
| 93 SIMD: 'simd', |
| 94 endmacro |
| 95 |
| 56 // Type names of the different mirrors. | 96 // Type names of the different mirrors. |
| 57 var MirrorType = { | 97 var MirrorType = { |
| 58 UNDEFINED_TYPE : 'undefined', | 98 UNDEFINED_TYPE : 'undefined', |
| 59 NULL_TYPE : 'null', | 99 NULL_TYPE : 'null', |
| 60 BOOLEAN_TYPE : 'boolean', | 100 BOOLEAN_TYPE : 'boolean', |
| 61 NUMBER_TYPE : 'number', | 101 NUMBER_TYPE : 'number', |
| 62 STRING_TYPE : 'string', | 102 STRING_TYPE : 'string', |
| 63 SYMBOL_TYPE : 'symbol', | 103 SYMBOL_TYPE : 'symbol', |
| 64 OBJECT_TYPE : 'object', | 104 OBJECT_TYPE : 'object', |
| 65 FUNCTION_TYPE : 'function', | 105 FUNCTION_TYPE : 'function', |
| 66 REGEXP_TYPE : 'regexp', | 106 REGEXP_TYPE : 'regexp', |
| 67 ERROR_TYPE : 'error', | 107 ERROR_TYPE : 'error', |
| 68 PROPERTY_TYPE : 'property', | 108 PROPERTY_TYPE : 'property', |
| 69 INTERNAL_PROPERTY_TYPE : 'internalProperty', | 109 INTERNAL_PROPERTY_TYPE : 'internalProperty', |
| 70 FRAME_TYPE : 'frame', | 110 FRAME_TYPE : 'frame', |
| 71 SCRIPT_TYPE : 'script', | 111 SCRIPT_TYPE : 'script', |
| 72 CONTEXT_TYPE : 'context', | 112 CONTEXT_TYPE : 'context', |
| 73 SCOPE_TYPE : 'scope', | 113 SCOPE_TYPE : 'scope', |
| 74 PROMISE_TYPE : 'promise', | 114 PROMISE_TYPE : 'promise', |
| 75 MAP_TYPE : 'map', | 115 MAP_TYPE : 'map', |
| 76 SET_TYPE : 'set', | 116 SET_TYPE : 'set', |
| 77 ITERATOR_TYPE : 'iterator', | 117 ITERATOR_TYPE : 'iterator', |
| 78 GENERATOR_TYPE : 'generator', | 118 GENERATOR_TYPE : 'generator', |
| 119 |
| 120 SIMD_TYPES(SIMD_DEFINE_TYPE) |
| 79 } | 121 } |
| 80 | 122 |
| 81 | 123 |
| 82 // Handle id counters. | 124 // Handle id counters. |
| 83 var next_handle_ = 0; | 125 var next_handle_ = 0; |
| 84 var next_transient_handle_ = -1; | 126 var next_transient_handle_ = -1; |
| 85 | 127 |
| 86 // Mirror cache. | 128 // Mirror cache. |
| 87 var mirror_cache_ = []; | 129 var mirror_cache_ = []; |
| 88 var mirror_cache_enabled_ = true; | 130 var mirror_cache_enabled_ = true; |
| (...skipping 22 matching lines...) Expand all Loading... |
| 111 function ObjectIsPromise(value) { | 153 function ObjectIsPromise(value) { |
| 112 try { | 154 try { |
| 113 return IS_SPEC_OBJECT(value) && | 155 return IS_SPEC_OBJECT(value) && |
| 114 !IS_UNDEFINED(%DebugGetProperty(value, promiseStatusSymbol)); | 156 !IS_UNDEFINED(%DebugGetProperty(value, promiseStatusSymbol)); |
| 115 } catch (e) { | 157 } catch (e) { |
| 116 return false; | 158 return false; |
| 117 } | 159 } |
| 118 } | 160 } |
| 119 | 161 |
| 120 | 162 |
| 163 macro SIMD_MAKE_MIRROR(SIMD, Simd, simd) |
| 164 case 'simd': |
| 165 mirror = new SimdMirror(value); |
| 166 break; |
| 167 endmacro |
| 168 |
| 169 |
| 121 /** | 170 /** |
| 122 * Returns the mirror for a specified value or object. | 171 * Returns the mirror for a specified value or object. |
| 123 * | 172 * |
| 124 * @param {value or Object} value the value or object to retreive the mirror for | 173 * @param {value or Object} value the value or object to retreive the mirror for |
| 125 * @param {boolean} transient indicate whether this object is transient and | 174 * @param {boolean} transient indicate whether this object is transient and |
| 126 * should not be added to the mirror cache. The default is not transient. | 175 * should not be added to the mirror cache. The default is not transient. |
| 127 * @returns {Mirror} the mirror reflects the passed value or object | 176 * @returns {Mirror} the mirror reflects the passed value or object |
| 128 */ | 177 */ |
| 129 function MakeMirror(value, opt_transient) { | 178 function MakeMirror(value, opt_transient) { |
| 130 var mirror; | 179 var mirror; |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 } else if (IS_MAP(value) || IS_WEAKMAP(value)) { | 220 } else if (IS_MAP(value) || IS_WEAKMAP(value)) { |
| 172 mirror = new MapMirror(value); | 221 mirror = new MapMirror(value); |
| 173 } else if (IS_SET(value) || IS_WEAKSET(value)) { | 222 } else if (IS_SET(value) || IS_WEAKSET(value)) { |
| 174 mirror = new SetMirror(value); | 223 mirror = new SetMirror(value); |
| 175 } else if (IS_MAP_ITERATOR(value) || IS_SET_ITERATOR(value)) { | 224 } else if (IS_MAP_ITERATOR(value) || IS_SET_ITERATOR(value)) { |
| 176 mirror = new IteratorMirror(value); | 225 mirror = new IteratorMirror(value); |
| 177 } else if (ObjectIsPromise(value)) { | 226 } else if (ObjectIsPromise(value)) { |
| 178 mirror = new PromiseMirror(value); | 227 mirror = new PromiseMirror(value); |
| 179 } else if (IS_GENERATOR(value)) { | 228 } else if (IS_GENERATOR(value)) { |
| 180 mirror = new GeneratorMirror(value); | 229 mirror = new GeneratorMirror(value); |
| 230 } else if (IS_SIMD_VALUE(value)) { |
| 231 switch (typeof value) { |
| 232 SIMD_TYPES(SIMD_MAKE_MIRROR) |
| 233 } |
| 181 } else { | 234 } else { |
| 182 mirror = new ObjectMirror(value, MirrorType.OBJECT_TYPE, opt_transient); | 235 mirror = new ObjectMirror(value, MirrorType.OBJECT_TYPE, opt_transient); |
| 183 } | 236 } |
| 184 | 237 |
| 185 if (mirror_cache_enabled_) mirror_cache_[mirror.handle()] = mirror; | 238 if (mirror_cache_enabled_) mirror_cache_[mirror.handle()] = mirror; |
| 186 return mirror; | 239 return mirror; |
| 187 } | 240 } |
| 188 | 241 |
| 189 | 242 |
| 190 /** | 243 /** |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 261 // NOTE: these constants should be backward-compatible, so | 314 // NOTE: these constants should be backward-compatible, so |
| 262 // add new ones to the end of this list. | 315 // add new ones to the end of this list. |
| 263 var ScopeType = { Global: 0, | 316 var ScopeType = { Global: 0, |
| 264 Local: 1, | 317 Local: 1, |
| 265 With: 2, | 318 With: 2, |
| 266 Closure: 3, | 319 Closure: 3, |
| 267 Catch: 4, | 320 Catch: 4, |
| 268 Block: 5, | 321 Block: 5, |
| 269 Script: 6 }; | 322 Script: 6 }; |
| 270 | 323 |
| 324 |
| 271 /** | 325 /** |
| 272 * Base class for all mirror objects. | 326 * Base class for all mirror objects. |
| 273 * @param {string} type The type of the mirror | 327 * @param {string} type The type of the mirror |
| 274 * @constructor | 328 * @constructor |
| 275 */ | 329 */ |
| 276 function Mirror(type) { | 330 function Mirror(type) { |
| 277 this.type_ = type; | 331 this.type_ = type; |
| 278 } | 332 } |
| 279 | 333 |
| 280 | 334 |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 339 | 393 |
| 340 /** | 394 /** |
| 341 * Check whether the mirror reflects a symbol. | 395 * Check whether the mirror reflects a symbol. |
| 342 * @returns {boolean} True if the mirror reflects a symbol | 396 * @returns {boolean} True if the mirror reflects a symbol |
| 343 */ | 397 */ |
| 344 Mirror.prototype.isSymbol = function() { | 398 Mirror.prototype.isSymbol = function() { |
| 345 return this instanceof SymbolMirror; | 399 return this instanceof SymbolMirror; |
| 346 }; | 400 }; |
| 347 | 401 |
| 348 | 402 |
| 403 macro SIMD_IS_FUNCTION(SIMD, Simd, simd) |
| 404 Mirror.prototype.isSimd = function() { |
| 405 return this instanceof SimdMirror; |
| 406 }; |
| 407 endmacro |
| 408 |
| 409 SIMD_TYPES(SIMD_IS_FUNCTION) |
| 410 |
| 411 |
| 349 /** | 412 /** |
| 350 * Check whether the mirror reflects an object. | 413 * Check whether the mirror reflects an object. |
| 351 * @returns {boolean} True if the mirror reflects an object | 414 * @returns {boolean} True if the mirror reflects an object |
| 352 */ | 415 */ |
| 353 Mirror.prototype.isObject = function() { | 416 Mirror.prototype.isObject = function() { |
| 354 return this instanceof ObjectMirror; | 417 return this instanceof ObjectMirror; |
| 355 }; | 418 }; |
| 356 | 419 |
| 357 | 420 |
| 358 /** | 421 /** |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 561 * Check whether this is a primitive value. | 624 * Check whether this is a primitive value. |
| 562 * @return {boolean} True if the mirror reflects a primitive value | 625 * @return {boolean} True if the mirror reflects a primitive value |
| 563 */ | 626 */ |
| 564 ValueMirror.prototype.isPrimitive = function() { | 627 ValueMirror.prototype.isPrimitive = function() { |
| 565 var type = this.type(); | 628 var type = this.type(); |
| 566 return type === 'undefined' || | 629 return type === 'undefined' || |
| 567 type === 'null' || | 630 type === 'null' || |
| 568 type === 'boolean' || | 631 type === 'boolean' || |
| 569 type === 'number' || | 632 type === 'number' || |
| 570 type === 'string' || | 633 type === 'string' || |
| 571 type === 'symbol'; | 634 type === 'symbol' || |
| 635 type === 'float32x4' || |
| 636 type === 'int32x4' || |
| 637 type === 'int16x8' || |
| 638 type === 'int8x16' || |
| 639 type === 'uint32x4' || |
| 640 type === 'uint16x8' || |
| 641 type === 'uint8x16' || |
| 642 type === 'bool32x4' || |
| 643 type === 'bool16x8' || |
| 644 type === 'bool8x16'; |
| 572 }; | 645 }; |
| 573 | 646 |
| 574 | 647 |
| 575 /** | 648 /** |
| 576 * Get the actual value reflected by this mirror. | 649 * Get the actual value reflected by this mirror. |
| 577 * @return {value} The value reflected by this mirror | 650 * @return {value} The value reflected by this mirror |
| 578 */ | 651 */ |
| 579 ValueMirror.prototype.value = function() { | 652 ValueMirror.prototype.value = function() { |
| 580 return this.value_; | 653 return this.value_; |
| 581 }; | 654 }; |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 691 SymbolMirror.prototype.description = function() { | 764 SymbolMirror.prototype.description = function() { |
| 692 return %SymbolDescription(%_ValueOf(this.value_)); | 765 return %SymbolDescription(%_ValueOf(this.value_)); |
| 693 } | 766 } |
| 694 | 767 |
| 695 | 768 |
| 696 SymbolMirror.prototype.toText = function() { | 769 SymbolMirror.prototype.toText = function() { |
| 697 return %_CallFunction(this.value_, builtins.$symbolToString); | 770 return %_CallFunction(this.value_, builtins.$symbolToString); |
| 698 } | 771 } |
| 699 | 772 |
| 700 | 773 |
| 774 macro SIMD_MIRROR_FUNCTIONS(SIMD, Simd, simd) |
| 775 function SimdMirror(value) { |
| 776 %_CallFunction(this, MirrorType.SIMD, value, ValueMirror); |
| 777 } |
| 778 inherits(SimdMirror, ValueMirror); |
| 779 |
| 780 |
| 781 SimdMirror.prototype.toText = function() { |
| 782 return %_CallFunction(this.value_, SimdToString); |
| 783 } |
| 784 endmacro |
| 785 |
| 786 SIMD_TYPES(SIMD_MIRROR_FUNCTIONS) |
| 787 |
| 788 |
| 701 /** | 789 /** |
| 702 * Mirror object for objects. | 790 * Mirror object for objects. |
| 703 * @param {object} value The object reflected by this mirror | 791 * @param {object} value The object reflected by this mirror |
| 704 * @param {boolean} transient indicate whether this object is transient with a | 792 * @param {boolean} transient indicate whether this object is transient with a |
| 705 * transient handle | 793 * transient handle |
| 706 * @constructor | 794 * @constructor |
| 707 * @extends ValueMirror | 795 * @extends ValueMirror |
| 708 */ | 796 */ |
| 709 function ObjectMirror(value, type, transient) { | 797 function ObjectMirror(value, type, transient) { |
| 710 type = type || MirrorType.OBJECT_TYPE; | 798 type = type || MirrorType.OBJECT_TYPE; |
| (...skipping 1877 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2588 if (this.mirrors_[i] === mirror) { | 2676 if (this.mirrors_[i] === mirror) { |
| 2589 return; | 2677 return; |
| 2590 } | 2678 } |
| 2591 } | 2679 } |
| 2592 | 2680 |
| 2593 // Add the mirror to the list of mirrors to be serialized. | 2681 // Add the mirror to the list of mirrors to be serialized. |
| 2594 this.mirrors_.push(mirror); | 2682 this.mirrors_.push(mirror); |
| 2595 }; | 2683 }; |
| 2596 | 2684 |
| 2597 | 2685 |
| 2686 macro SIMD_DEFINE_CASE(SIMD, Simd, simd) |
| 2687 case MirrorType.SIMD: |
| 2688 endmacro |
| 2689 |
| 2690 |
| 2598 /** | 2691 /** |
| 2599 * Formats mirror object to protocol reference object with some data that can | 2692 * Formats mirror object to protocol reference object with some data that can |
| 2600 * be used to display the value in debugger. | 2693 * be used to display the value in debugger. |
| 2601 * @param {Mirror} mirror Mirror to serialize. | 2694 * @param {Mirror} mirror Mirror to serialize. |
| 2602 * @return {Object} Protocol reference object. | 2695 * @return {Object} Protocol reference object. |
| 2603 */ | 2696 */ |
| 2604 JSONProtocolSerializer.prototype.serializeReferenceWithDisplayData_ = | 2697 JSONProtocolSerializer.prototype.serializeReferenceWithDisplayData_ = |
| 2605 function(mirror) { | 2698 function(mirror) { |
| 2606 var o = {}; | 2699 var o = {}; |
| 2607 o.ref = mirror.handle(); | 2700 o.ref = mirror.handle(); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 2621 break; | 2714 break; |
| 2622 case MirrorType.FUNCTION_TYPE: | 2715 case MirrorType.FUNCTION_TYPE: |
| 2623 o.name = mirror.name(); | 2716 o.name = mirror.name(); |
| 2624 o.inferredName = mirror.inferredName(); | 2717 o.inferredName = mirror.inferredName(); |
| 2625 if (mirror.script()) { | 2718 if (mirror.script()) { |
| 2626 o.scriptId = mirror.script().id(); | 2719 o.scriptId = mirror.script().id(); |
| 2627 } | 2720 } |
| 2628 break; | 2721 break; |
| 2629 case MirrorType.ERROR_TYPE: | 2722 case MirrorType.ERROR_TYPE: |
| 2630 case MirrorType.REGEXP_TYPE: | 2723 case MirrorType.REGEXP_TYPE: |
| 2724 SIMD_TYPES(SIMD_DEFINE_CASE) |
| 2631 o.value = mirror.toText(); | 2725 o.value = mirror.toText(); |
| 2632 break; | 2726 break; |
| 2633 case MirrorType.OBJECT_TYPE: | 2727 case MirrorType.OBJECT_TYPE: |
| 2634 o.className = mirror.className(); | 2728 o.className = mirror.className(); |
| 2635 break; | 2729 break; |
| 2636 } | 2730 } |
| 2637 return o; | 2731 return o; |
| 2638 }; | 2732 }; |
| 2639 | 2733 |
| 2640 | 2734 |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2690 } else { | 2784 } else { |
| 2691 content.value = mirror.value(); | 2785 content.value = mirror.value(); |
| 2692 } | 2786 } |
| 2693 content.length = mirror.length(); | 2787 content.length = mirror.length(); |
| 2694 break; | 2788 break; |
| 2695 | 2789 |
| 2696 case MirrorType.SYMBOL_TYPE: | 2790 case MirrorType.SYMBOL_TYPE: |
| 2697 content.description = mirror.description(); | 2791 content.description = mirror.description(); |
| 2698 break; | 2792 break; |
| 2699 | 2793 |
| 2794 SIMD_TYPES(SIMD_DEFINE_CASE) |
| 2795 content.value = mirror.toText(); |
| 2796 break; |
| 2797 |
| 2700 case MirrorType.OBJECT_TYPE: | 2798 case MirrorType.OBJECT_TYPE: |
| 2701 case MirrorType.FUNCTION_TYPE: | 2799 case MirrorType.FUNCTION_TYPE: |
| 2702 case MirrorType.ERROR_TYPE: | 2800 case MirrorType.ERROR_TYPE: |
| 2703 case MirrorType.REGEXP_TYPE: | 2801 case MirrorType.REGEXP_TYPE: |
| 2704 case MirrorType.PROMISE_TYPE: | 2802 case MirrorType.PROMISE_TYPE: |
| 2705 case MirrorType.GENERATOR_TYPE: | 2803 case MirrorType.GENERATOR_TYPE: |
| 2706 // Add object representation. | 2804 // Add object representation. |
| 2707 this.serializeObject_(mirror, content, details); | 2805 this.serializeObject_(mirror, content, details); |
| 2708 break; | 2806 break; |
| 2709 | 2807 |
| (...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3066 // Exports | 3164 // Exports |
| 3067 | 3165 |
| 3068 utils.InstallFunctions(global, DONT_ENUM, [ | 3166 utils.InstallFunctions(global, DONT_ENUM, [ |
| 3069 "MakeMirror", MakeMirror, | 3167 "MakeMirror", MakeMirror, |
| 3070 "MakeMirrorSerializer", MakeMirrorSerializer, | 3168 "MakeMirrorSerializer", MakeMirrorSerializer, |
| 3071 "LookupMirror", LookupMirror, | 3169 "LookupMirror", LookupMirror, |
| 3072 "ToggleMirrorCache", ToggleMirrorCache, | 3170 "ToggleMirrorCache", ToggleMirrorCache, |
| 3073 "MirrorCacheIsEmpty", MirrorCacheIsEmpty, | 3171 "MirrorCacheIsEmpty", MirrorCacheIsEmpty, |
| 3074 ]); | 3172 ]); |
| 3075 | 3173 |
| 3174 |
| 3175 macro SIMD_INSTALL(SIMD, Simd, simd) |
| 3176 "SimdMirror", SimdMirror, |
| 3177 endmacro |
| 3178 |
| 3076 utils.InstallConstants(global, [ | 3179 utils.InstallConstants(global, [ |
| 3077 "ScopeType", ScopeType, | 3180 "ScopeType", ScopeType, |
| 3078 "PropertyKind", PropertyKind, | 3181 "PropertyKind", PropertyKind, |
| 3079 "PropertyType", PropertyType, | 3182 "PropertyType", PropertyType, |
| 3080 "PropertyAttribute", PropertyAttribute, | 3183 "PropertyAttribute", PropertyAttribute, |
| 3081 "Mirror", Mirror, | 3184 "Mirror", Mirror, |
| 3082 "ValueMirror", ValueMirror, | 3185 "ValueMirror", ValueMirror, |
| 3083 "UndefinedMirror", UndefinedMirror, | 3186 "UndefinedMirror", UndefinedMirror, |
| 3084 "NullMirror", NullMirror, | 3187 "NullMirror", NullMirror, |
| 3085 "BooleanMirror", BooleanMirror, | 3188 "BooleanMirror", BooleanMirror, |
| (...skipping 11 matching lines...) Expand all Loading... |
| 3097 "MapMirror", MapMirror, | 3200 "MapMirror", MapMirror, |
| 3098 "SetMirror", SetMirror, | 3201 "SetMirror", SetMirror, |
| 3099 "IteratorMirror", IteratorMirror, | 3202 "IteratorMirror", IteratorMirror, |
| 3100 "GeneratorMirror", GeneratorMirror, | 3203 "GeneratorMirror", GeneratorMirror, |
| 3101 "PropertyMirror", PropertyMirror, | 3204 "PropertyMirror", PropertyMirror, |
| 3102 "InternalPropertyMirror", InternalPropertyMirror, | 3205 "InternalPropertyMirror", InternalPropertyMirror, |
| 3103 "FrameMirror", FrameMirror, | 3206 "FrameMirror", FrameMirror, |
| 3104 "ScriptMirror", ScriptMirror, | 3207 "ScriptMirror", ScriptMirror, |
| 3105 "ScopeMirror", ScopeMirror, | 3208 "ScopeMirror", ScopeMirror, |
| 3106 "FrameDetails", FrameDetails, | 3209 "FrameDetails", FrameDetails, |
| 3210 |
| 3211 SIMD_TYPES(SIMD_INSTALL) |
| 3107 ]); | 3212 ]); |
| 3108 | 3213 |
| 3109 // Functions needed by the debugger runtime. | 3214 // Functions needed by the debugger runtime. |
| 3110 utils.InstallFunctions(utils, DONT_ENUM, [ | 3215 utils.InstallFunctions(utils, DONT_ENUM, [ |
| 3111 "ClearMirrorCache", ClearMirrorCache | 3216 "ClearMirrorCache", ClearMirrorCache |
| 3112 ]); | 3217 ]); |
| 3113 | 3218 |
| 3114 // Export to debug.js | 3219 // Export to debug.js |
| 3115 utils.Export(function(to) { | 3220 utils.Export(function(to) { |
| 3116 to.MirrorType = MirrorType; | 3221 to.MirrorType = MirrorType; |
| 3117 }); | 3222 }); |
| 3118 }) | 3223 }) |
| OLD | NEW |