Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | 2x 2x 2x 2x 4x 4x 4x 4x 834837x 834837x 834837x 308296x 308296x 308296x 308296x 834837x 834837x 4x 4x 4x 37756x 37756x 37756x 6x 6x 6x 6x 37756x 37756x 4x 4x 4x 1068479x 1068479x 1068479x 545752x 545752x 545752x 545752x 1068479x 1068479x 4x 4x 2x 2x 2x 2x 2x 2x 2x 2x 8x 8x 8x 8x 2x 2x 2x 2x 2x 2x 2x 2x | import * as w from '../warnings.js'; import { get_proxied_value } from '../proxy.js'; export function init_array_prototype_warnings() { const array_prototype = Array.prototype; const { indexOf, lastIndexOf, includes } = array_prototype; array_prototype.indexOf = function (item, from_index) { const index = indexOf.call(this, item, from_index); if (index === -1) { const test = indexOf.call(get_proxied_value(this), get_proxied_value(item), from_index); if (test !== -1) { w.state_proxy_equality_mismatch('array.indexOf(...)'); // eslint-disable-next-line no-console console.trace(); } } return index; }; array_prototype.lastIndexOf = function (item, from_index) { const index = lastIndexOf.call(this, item, from_index); if (index === -1) { const test = lastIndexOf.call(get_proxied_value(this), get_proxied_value(item), from_index); if (test !== -1) { w.state_proxy_equality_mismatch('array.lastIndexOf(...)'); // eslint-disable-next-line no-console console.trace(); } } return index; }; array_prototype.includes = function (item, from_index) { const has = includes.call(this, item, from_index); if (!has) { const test = includes.call(get_proxied_value(this), get_proxied_value(item), from_index); if (test) { w.state_proxy_equality_mismatch('array.includes(...)'); // eslint-disable-next-line no-console console.trace(); } } return has; }; } /** * @param {any} a * @param {any} b * @param {boolean} equal * @returns {boolean} */ export function strict_equals(a, b, equal = true) { if ((a === b) !== (get_proxied_value(a) === get_proxied_value(b))) { w.state_proxy_equality_mismatch(equal ? '===' : '!=='); // eslint-disable-next-line no-console console.trace(); } return (a === b) === equal; } /** * @param {any} a * @param {any} b * @param {boolean} equal * @returns {boolean} */ export function equals(a, b, equal = true) { if ((a == b) !== (get_proxied_value(a) == get_proxied_value(b))) { w.state_proxy_equality_mismatch(equal ? '==' : '!='); // eslint-disable-next-line no-console console.trace(); } return (a == b) === equal; } |