UNPKG

type-tls

Version:

type-tls 封装了与类型相关的工具,比如:获取数据的类型 或 类型名字、判断数据的类型 等

2 lines (1 loc) 2.72 kB
(function(t,i){typeof exports=="object"&&typeof module<"u"?i(exports):typeof define=="function"&&define.amd?define(["exports"],i):(t=typeof globalThis<"u"?globalThis:t||self,i(t.TypeTls={}))})(this,function(t){"use strict";function i(n){var e=typeof n;return n&&(e==="object"||e==="function")}function s(n){var e=n;return n!=null&&(e=n.constructor,e==null&&(e=typeof n)),e}function f(n){switch(n){case void 0:return"undefined";case null:return"null"}let e=typeof n;switch(e){case"function":return n.name;case"string":return n;default:return e}}function y(n){return globalThis[n]}function l(n){let e=s(n);return f(e)}function a(n){return n==null||i(n)?s(n):typeof n}function A(n){var e=a(n);return f(e)}function g(n){var e=typeof n;return n==null||e!=="object"&&e!=="function"}function T(n){let e=n&&n.length;return Number.isInteger(n.length)&&e>=0}function m(n){return n&&typeof n[Symbol.iterator]=="function"}function b(n){return n&&typeof n.next=="function"}const F=/^[A-Za-z_$]+[\w$]*$/;function d(n){return F.test(n)}const O=/(^\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 h(n){const e=n.toString();return O.test(e)}const p=globalThis.AsyncFunction??(async function(){}).constructor;function w(n){return n instanceof p}const E=globalThis.GeneratorFunction??(function*(){}).constructor;function $(n){return n instanceof E}const N=globalThis.AsyncGeneratorFunction??(async function*(){}).constructor;function S(n){return n instanceof N}const q=/(^\s*(async\s+)?function\s*(\s|\*)\s*)[A-Za-z_$]+[\w$]*(\s*\()/;function I(n){if(n.name){const e=n.toString();return!q.test(e)}return!0}function j(n){return Array.isArray(n)?n:n==null?[]:[n]}function v(n){for(const[e,r]of Object.entries(n))n[e]=Array.isArray(r)?r:r==null?[]:[r];return n}function G(n,e){return n instanceof Promise?n.then(r=>e(r,!1,void 0),r=>e(void 0,!0,r)):e(n,!1,void 0)}t.BitFlagEqualTestType=(n=>(n.equal="equal",n.intersect="intersect",n.intersectEqual="intersectEqual",n))(t.BitFlagEqualTestType||{}),(n=>{function e(r){let c;switch(r){case"equal":c=(u,o)=>u===o;case"intersect":c=(u,o)=>u&o;default:c=(u,o)=>(u&o)===u}return c}n.getEqualFun=e})(t.BitFlagEqualTestType||(t.BitFlagEqualTestType={})),t.formatAsArray=j,t.formatMemberAsArray=v,t.getExactTypeNameOf=A,t.getExactTypeOf=a,t.getNameOfType=f,t.getTypeByName=y,t.getTypeNameOf=l,t.getTypeOf=s,t.isAnonymousFunction=I,t.isArrayLike=T,t.isArrowFunction=h,t.isAsyncFunction=w,t.isAsyncGeneratorFunction=S,t.isBaseType=g,t.isGeneratorFunction=$,t.isIdentifier=d,t.isIterable=m,t.isIterator=b,t.isObject=i,t.waitAsyncable=G,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});