type-tls
Version:
type-tls 封装了与类型相关的工具,比如:获取数据的类型 或 类型名字、判断数据的类型 等
136 lines (135 loc) • 3.04 kB
JavaScript
function f(n) {
var t = typeof n;
return n && (t === "object" || t === "function");
}
function i(n) {
var t = n;
return n != null && (t = n.constructor, t == null && (t = typeof n)), t;
}
function s(n) {
switch (n) {
case void 0:
return "undefined";
case null:
return "null";
}
let t = typeof n;
switch (t) {
case "function":
return n.name;
case "string":
return n;
default:
return t;
}
}
function m(n) {
return globalThis[n];
}
function F(n) {
let t = i(n);
return s(t);
}
function a(n) {
return n == null || f(n) ? i(n) : typeof n;
}
function h(n) {
var t = a(n);
return s(t);
}
function w(n) {
var t = typeof n;
return n == null || t !== "object" && t !== "function";
}
function $(n) {
let t = n && n.length;
return Number.isInteger(n.length) && t >= 0;
}
function O(n) {
return n && typeof n[Symbol.iterator] == "function";
}
function T(n) {
return n && typeof n.next == "function";
}
const y = /^[A-Za-z_$]+[\w$]*$/;
function d(n) {
return y.test(n);
}
const l = /(^\s*(async\s+)?\s*(\b[A-Za-z_$]+[\w$]*\b)\s*=>)|(^\s*(async\s+)?\s*\(\s*(\b[A-Za-z_$]+[\w$]*\b)?\s*(,\s*(\b[A-Za-z_$]+[\w$]*\b)\s*)*\)\s*=>)/;
function v(n) {
const t = n.toString();
return l.test(t);
}
const A = globalThis.AsyncFunction ?? (async function() {
}).constructor;
function S(n) {
return n instanceof A;
}
const p = globalThis.GeneratorFunction ?? (function* () {
}).constructor;
function q(n) {
return n instanceof p;
}
const g = globalThis.AsyncGeneratorFunction ?? (async function* () {
}).constructor;
function x(n) {
return n instanceof g;
}
const b = /(^\s*(async\s+)?function\s*(\s|\*)\s*)[A-Za-z_$]+[\w$]*(\s*\()/;
function E(n) {
if (n.name) {
const t = n.toString();
return !b.test(t);
}
return !0;
}
function G(n) {
return Array.isArray(n) ? n : n == null ? [] : [n];
}
function I(n) {
for (const [t, e] of Object.entries(n))
n[t] = Array.isArray(e) ? e : e == null ? [] : [e];
return n;
}
function N(n, t) {
return n instanceof Promise ? n.then((e) => t(e, !1, void 0), (e) => t(void 0, !0, e)) : t(n, !1, void 0);
}
var c = /* @__PURE__ */ ((n) => (n.equal = "equal", n.intersect = "intersect", n.intersectEqual = "intersectEqual", n))(c || {});
((n) => {
function t(e) {
let o;
switch (e) {
case "equal":
o = (r, u) => r === u;
case "intersect":
o = (r, u) => r & u;
default:
o = (r, u) => (r & u) === r;
}
return o;
}
n.getEqualFun = t;
})(c || (c = {}));
export {
c as BitFlagEqualTestType,
G as formatAsArray,
I as formatMemberAsArray,
h as getExactTypeNameOf,
a as getExactTypeOf,
s as getNameOfType,
m as getTypeByName,
F as getTypeNameOf,
i as getTypeOf,
E as isAnonymousFunction,
$ as isArrayLike,
v as isArrowFunction,
S as isAsyncFunction,
x as isAsyncGeneratorFunction,
w as isBaseType,
q as isGeneratorFunction,
d as isIdentifier,
O as isIterable,
T as isIterator,
f as isObject,
N as waitAsyncable
};