You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
2.5 KiB
101 lines
2.5 KiB
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.isArrayBuffer = isArrayBuffer;
|
|
exports.isCanonicalIntegerIndexString = isCanonicalIntegerIndexString;
|
|
exports.isNativeBigIntTypedArray = isNativeBigIntTypedArray;
|
|
exports.isNativeTypedArray = isNativeTypedArray;
|
|
exports.isObject = isObject;
|
|
exports.isObjectLike = isObjectLike;
|
|
exports.isOrdinaryArray = isOrdinaryArray;
|
|
exports.isOrdinaryNativeTypedArray = isOrdinaryNativeTypedArray;
|
|
exports.isSharedArrayBuffer = isSharedArrayBuffer;
|
|
|
|
var _primordials = require("./primordials.cjs");
|
|
|
|
function isObject(value) {
|
|
return value !== null && typeof value === "object" || typeof value === "function";
|
|
}
|
|
|
|
function isObjectLike(value) {
|
|
return value !== null && typeof value === "object";
|
|
}
|
|
|
|
function isNativeTypedArray(value) {
|
|
return (0, _primordials.TypedArrayPrototypeGetSymbolToStringTag)(value) !== undefined;
|
|
}
|
|
|
|
function isNativeBigIntTypedArray(value) {
|
|
const typedArrayName = (0, _primordials.TypedArrayPrototypeGetSymbolToStringTag)(value);
|
|
return typedArrayName === "BigInt64Array" || typedArrayName === "BigUint64Array";
|
|
}
|
|
|
|
function isArrayBuffer(value) {
|
|
try {
|
|
(0, _primordials.ArrayBufferPrototypeGetByteLength)(value);
|
|
return true;
|
|
} catch (e) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function isSharedArrayBuffer(value) {
|
|
if (_primordials.NativeSharedArrayBuffer === null) {
|
|
return false;
|
|
}
|
|
|
|
try {
|
|
(0, _primordials.SharedArrayBufferPrototypeGetByteLength)(value);
|
|
return true;
|
|
} catch (e) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function isOrdinaryArray(value) {
|
|
if (!(0, _primordials.ArrayIsArray)(value)) {
|
|
return false;
|
|
}
|
|
|
|
if (value[_primordials.SymbolIterator] === _primordials.NativeArrayPrototypeSymbolIterator) {
|
|
return true;
|
|
}
|
|
|
|
const iterator = value[_primordials.SymbolIterator]();
|
|
|
|
return iterator[_primordials.SymbolToStringTag] === "Array Iterator";
|
|
}
|
|
|
|
function isOrdinaryNativeTypedArray(value) {
|
|
if (!isNativeTypedArray(value)) {
|
|
return false;
|
|
}
|
|
|
|
if (value[_primordials.SymbolIterator] === _primordials.NativeTypedArrayPrototypeSymbolIterator) {
|
|
return true;
|
|
}
|
|
|
|
const iterator = value[_primordials.SymbolIterator]();
|
|
|
|
return iterator[_primordials.SymbolToStringTag] === "Array Iterator";
|
|
}
|
|
|
|
function isCanonicalIntegerIndexString(value) {
|
|
if (typeof value !== "string") {
|
|
return false;
|
|
}
|
|
|
|
const number = +value;
|
|
|
|
if (value !== number + "") {
|
|
return false;
|
|
}
|
|
|
|
if (!(0, _primordials.NumberIsFinite)(number)) {
|
|
return false;
|
|
}
|
|
|
|
return number === (0, _primordials.MathTrunc)(number);
|
|
} |