WebKit
WebKit copied to clipboard
Add remaining private methods
Add remaining private methods. Related to https://github.com/oven-sh/bun/pull/9306 and https://github.com/oven-sh/bun/pull/9076
Example
console.log("Array");
console.log("Array.from", Array.$from);
console.log("Array.from2", Array.$from === Array.from);
console.log("Array.isArray", Array.$isArray);
console.log("Array.isArray2", Array.$isArray === Array.isArray);
console.log("Array.of", Array.$of);
console.log("Array.of2", Array.$of === Array.of);
console.log("Array.@@species", Array.$$species);
console.log("constructor", Array.prototype.$constructor);
console.log("constructor2", Array.prototype.$constructor === Array);
console.log("constructor3", Array.prototype.$constructor === $Array);
console.log("length", Array.prototype.$length);
console.log("['a', 'b', 'c'].@length", ["a", "b", "c"].$length);
console.log("concat", Array.prototype.$concat);
console.log("copyWithin", Array.prototype.$copyWithin);
console.log("fill", Array.prototype.$fill);
console.log("find", Array.prototype.$find);
console.log("findIndex", Array.prototype.$findIndex);
console.log("lastIndexOf", Array.prototype.$lastIndexOf);
console.log("pop", Array.prototype.$pop);
console.log("push", Array.prototype.$push);
console.log("reverse", Array.prototype.$reverse);
console.log("shift", Array.prototype.$shift);
console.log("shift2", Array.prototype.$shift === Array.prototype.shift);
console.log("unshift", Array.prototype.$unshift);
console.log("slice", Array.prototype.$slice);
console.log("sort", Array.prototype.$sort);
console.log("splice", Array.prototype.$splice);
console.log("includes", Array.prototype.$includes);
console.log("indexOf", Array.prototype.$indexOf);
console.log("join", Array.prototype.$join);
console.log("keys", Array.prototype.$keys);
console.log("entries", Array.prototype.$entries);
console.log("values", Array.prototype.$values);
console.log("forEach", Array.prototype.$forEach);
console.log("filter", Array.prototype.$filter);
console.log("flat", Array.prototype.$flat);
console.log("flatMap", Array.prototype.$flatMap);
console.log("map", Array.prototype.$map);
console.log("every", Array.prototype.$every);
console.log("some", Array.prototype.$some);
console.log("reduce", Array.prototype.$reduce);
console.log("reduceRight", Array.prototype.$reduceRight);
console.log("toLocaleString", Array.prototype.$toLocaleString);
console.log("toString", Array.prototype.$toString);
console.log("at", Array.prototype.$at);
console.log("findLast", Array.prototype.$findLast);
console.log("findLastIndex", Array.prototype.$findLastIndex);
console.log(String(Symbol.iterator), Array.prototype.$$iterator);
console.log(String(Symbol.unscopables), Array.prototype.$$unscopables);
var a = [1, 2, 3];
Symbol.iterator;
a[$$iterator] = "foo";
console.log(Symbol.iterator);
console.log(a.$$iterator);
console.log(a[$$iterator]);
console.log("String");
console.log("constructor", String.prototype.$constructor);
console.log("constructor2", String.prototype.$constructor === String);
console.log("constructor3", String.prototype.$constructor === $String);
console.log("length", String.prototype.$length);
console.log("'abc'.@length", "abc".$length);
console.log("at", String.prototype.$at);
console.log("charAt", String.prototype.$charAt);
console.log("charCodeAt", String.prototype.$charCodeAt);
console.log("charCodeAt2", String.prototype.$charCodeAt === String.prototype.charCodeAt);
console.log("codePointAt", String.prototype.$codePointAt);
console.log("concat", String.prototype.$concat);
console.log("endsWith", String.prototype.$endsWith);
console.log("includes", String.prototype.$includes);
console.log("indexOf", String.prototype.$indexOf);
console.log("isWellFormed", String.prototype.$isWellFormed);
console.log("lastIndexOf", String.prototype.$lastIndexOf);
console.log("match", String.prototype.$match);
console.log("matchAll", String.prototype.$matchAll);
console.log("normalize", String.prototype.$normalize);
console.log("padEnd", String.prototype.$padEnd);
console.log("padStart", String.prototype.$padStart);
console.log("repeat", String.prototype.$repeat);
console.log("replace", String.prototype.$replace);
console.log("replaceAll", String.prototype.$replaceAll);
console.log("search", String.prototype.$search);
console.log("slice", String.prototype.$slice);
console.log("split", String.prototype.$split);
console.log("startsWith", String.prototype.$startsWith);
console.log("substr", String.prototype.$substr);
console.log("substring", String.prototype.$substring);
console.log("localeCompare", String.prototype.$localeCompare);
console.log("toLocaleLowerCase", String.prototype.$toLocaleLowerCase);
console.log("toLocaleUpperCase", String.prototype.$toLocaleUpperCase);
console.log("toLowerCase", String.prototype.$toLowerCase);
console.log("toUpperCase", String.prototype.$toUpperCase);
console.log("trim", String.prototype.$trim);
console.log("trimLeft", String.prototype.$trimLeft);
console.log("trimStart", String.prototype.$trimStart);
console.log("trimEnd", String.prototype.$trimEnd);
console.log("trimRight", String.prototype.$trimRight);
console.log("toWellFormed", String.prototype.$toWellFormed);
console.log("toString", String.prototype.$toString);
console.log("valueOf", String.prototype.$valueOf);
console.log(String(Symbol.iterator), String.prototype.$$iterator);
Output
Array
Array.from [Function: from]
Array.from2 true
Array.isArray [Function: isArray]
Array.isArray2 true
Array.of [Function: of]
Array.of2 true
Array.@@species [class Array]
constructor [class Array]
constructor2 true
constructor3 true
length 0
['a', 'b', 'c'].@length 3
concat [Function: concat]
copyWithin [Function: copyWithin]
fill [Function: fill]
find [Function: find]
findIndex [Function: findIndex]
lastIndexOf [Function: lastIndexOf]
pop [Function: pop]
push [Function: push]
reverse [Function: reverse]
shift [Function: anonymous]
shift2 false
unshift [Function: unshift]
slice [Function: slice]
sort [Function: sort]
splice [Function: splice]
includes [Function: includes]
indexOf [Function: indexOf]
join [Function: join]
keys [Function: keys]
entries [Function: entries]
values [Function: values]
forEach [Function: forEach]
filter [Function: filter]
flat [Function: flat]
flatMap [Function: flatMap]
map [Function: map]
every [Function: every]
some [Function: some]
reduce [Function: reduce]
reduceRight [Function: reduceRight]
toLocaleString [Function: toLocaleString]
toString [Function: toString]
at [Function: at]
findLast [Function: findLast]
findLastIndex [Function: findLastIndex]
Symbol(Symbol.iterator) [Function: values]
Symbol(Symbol.unscopables) {
at: true,
copyWithin: true,
entries: true,
fill: true,
find: true,
findIndex: true,
findLast: true,
findLastIndex: true,
flat: true,
flatMap: true,
includes: true,
keys: true,
toReversed: true,
toSorted: true,
toSpliced: true,
values: true,
}
Symbol(Symbol.iterator)
[Function: values]
foo
String
constructor [class String]
constructor2 true
constructor3 true
length 0
'abc'.@length 3
at [Function: at]
charAt [Function: charAt]
charCodeAt [Function: charCodeAt]
charCodeAt2 true
codePointAt [Function: codePointAt]
concat [Function: concat]
endsWith [Function: anonymous]
includes [Function: includes]
indexOf [Function: indexOf]
isWellFormed [Function: isWellFormed]
lastIndexOf [Function: lastIndexOf]
match [Function: match]
matchAll [Function: matchAll]
normalize [Function: normalize]
padEnd [Function: padEnd]
Add remaining private Array and String methods
padStart [Function: padStart]
repeat [Function: repeat]
replace [Function: replace]
replaceAll [Function: replaceAll]
search [Function: search]
slice [Function: slice]
split [Function: split]
startsWith [Function: startsWith]
substr [Function: anonymous]
substring [Function: substring]
localeCompare [Function: localeCompare]
toLocaleLowerCase [Function: toLocaleLowerCase]
toLocaleUpperCase [Function: toLocaleUpperCase]
toLowerCase [Function: toLowerCase]
toUpperCase [Function: toUpperCase]
trim [Function: trim]
trimLeft [Function: trimStart]
trimStart [Function: trimStart]
trimEnd [Function: trimEnd]
trimRight [Function: trimEnd]
toWellFormed [Function: toWellFormed]
toString [Function: valueOf]
valueOf [Function: valueOf]
Symbol(Symbol.iterator) [Function: [Symbol.iterator]]
Superseded by the jdalton/webkit-bun-patch branch.