npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

nv-validator-json-tree

v1.0.24

Published

nv-validator-json-tree =============== - nv-validator-json-tree - simplified version of nvjson AND nv-json-visitor - fewer data-type, but more fast - for testing nvlang fixed-jtype validate, normally USELESS

Readme

nv-validator-json-tree

  • nv-validator-json-tree
  • simplified version of nvjson AND nv-json-visitor
  • fewer data-type, but more fast
  • for testing nvlang fixed-jtype validate, normally USELESS

install

  • npm install nv-validator-json-tree

usage

   const {init} = require("nv-validator-json-tree"); 

example

    const {deepStrictEqual} = require("assert");

    var forest = init(10000);

    var j = {
        nu:null,
        num:77777,
        bool:true,
        str:'ssssss',
        ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}} ],
        dict: {
            nu:null,
            num:1.5,
            str:'s',
            ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}}],
            dict:{k5:true,k6:false }
        },
    }


    var rt = forest.creat_jtree(j);

    assert(rt.key_===null);
    assert(rt.val_===undefined);
    assert(rt.is_root());
    assert(rt.is_dict());
    assert(!rt.is_ele());
    assert(!rt.is_prop());





    deepStrictEqual(
          rt.creat_jtmpl(),
          {
            nu: undefined,
            num: undefined,
            bool: undefined,
            str: undefined,
            ary: [
              undefined,
              undefined,
              undefined,
              [ undefined, undefined, undefined ],
              { k1: undefined, k2: undefined, k3: undefined, k4: [], k5: {} }
            ],
            dict: {
              nu: undefined,
              num: undefined,
              str: undefined,
              ary: [
                undefined,
                undefined,
                undefined,
                [ undefined, undefined, undefined ],
                { k1: undefined, k2: undefined, k3: undefined, k4: [], k5: {} }
              ],
              dict: { k5: undefined, k6: undefined }
            }
          }
    )





    deepStrictEqual(
        rt.$sdfs_.map(nd=>nd.koi_),
        [
          null, 'nu',   'num', 'bool', 'str', 'ary',
          0,    1,      2,     3,      0,     1,
          2,    4,      'k1',  'k2',   'k3',  'k4',
          'k5', 'dict', 'nu',  'num',  'str', 'ary',
          0,    1,      2,     3,      0,     1,
          2,    4,      'k1',  'k2',   'k3',  'k4',
          'k5', 'dict', 'k5',  'k6'
        ]
    )

    deepStrictEqual(
        rt.pls_,
        [
          [],
          [ 'nu' ],
          [ 'num' ],
          [ 'bool' ],
          [ 'str' ],
          [ 'ary' ],
          [ 'ary', 0 ],
          [ 'ary', 1 ],
          [ 'ary', 2 ],
          [ 'ary', 3 ],
          [ 'ary', 3, 0 ],
          [ 'ary', 3, 1 ],
          [ 'ary', 3, 2 ],
          [ 'ary', 4 ],
          [ 'ary', 4, 'k1' ],
          [ 'ary', 4, 'k2' ],
          [ 'ary', 4, 'k3' ],
          [ 'ary', 4, 'k4' ],
          [ 'ary', 4, 'k5' ],
          [ 'dict' ],
          [ 'dict', 'nu' ],
          [ 'dict', 'num' ],
          [ 'dict', 'str' ],
          [ 'dict', 'ary' ],
          [ 'dict', 'ary', 0 ],
          [ 'dict', 'ary', 1 ],
          [ 'dict', 'ary', 2 ],
          [ 'dict', 'ary', 3 ],
          [ 'dict', 'ary', 3, 0 ],
          [ 'dict', 'ary', 3, 1 ],
          [ 'dict', 'ary', 3, 2 ],
          [ 'dict', 'ary', 4 ],
          [ 'dict', 'ary', 4, 'k1' ],
          [ 'dict', 'ary', 4, 'k2' ],
          [ 'dict', 'ary', 4, 'k3' ],
          [ 'dict', 'ary', 4, 'k4' ],
          [ 'dict', 'ary', 4, 'k5' ],
          [ 'dict', 'dict' ],
          [ 'dict', 'dict', 'k5' ],
          [ 'dict', 'dict', 'k6' ]
        ]
    )


    var nd1 = rt.koiget_chnd("nu")
    deepStrictEqual(nd1.val_,null)
    deepStrictEqual(rt.koiget_chnd("num").val_,77777)
    deepStrictEqual(rt.koiget_chnd("bool").val_,true)
    deepStrictEqual(rt.koiget_chnd("str").val_,'ssssss')
    var nd = rt.koiget_chnd("ary");
    deepStrictEqual(
        nd.calc(),
            [
             0,
             's',
             null,
             [ 10, 20, 30 ],
             { k1: 'v', k2: 0, k3: null, k4: [], k5: {} }
        ]
    );
    var nd = rt.koiget_chnd("dict");
    deepStrictEqual(
        nd.calc(),
        {
          nu: null,
          num: 1.5,
          str: 's',
          ary: [
            0,
            's',
            null,
            [ 10, 20, 30 ],
            { k1: 'v', k2: 0, k3: null, k4: [], k5: {} }
          ],
          dict: { k5: true, k6: false }
        }
    );

    deepStrictEqual(rt.plget_j([]),j)
    deepStrictEqual(rt.plget_j([ 'nu' ]),null)
    deepStrictEqual(rt.plget_j([ 'num' ]),77777)
    deepStrictEqual(rt.plget_j([ 'bool' ]),true)
    deepStrictEqual(rt.plget_j([ 'str' ]),'ssssss')
    deepStrictEqual(
        rt.plget_j([ 'ary' ]),
        [
          0,
          's',
          null,
          [ 10, 20, 30 ],
          { k1: 'v', k2: 0, k3: null, k4: [], k5: {} }
        ]
    )
    deepStrictEqual(
        rt.plget_j([ 'ary' ,3]),
        [ 10, 20, 30 ]
    )
    deepStrictEqual(
        rt.plget_j([ 'ary' ,3,1]),
        20
    )


    deepStrictEqual(
        rt.plget_j([ 'dict' ]),
        {
          nu: null,
          num: 1.5,
          str: 's',
          ary: [
            0,
            's',
            null,
            [ 10, 20, 30 ],
            { k1: 'v', k2: 0, k3: null, k4: [], k5: {} }
          ],
          dict: { k5: true, k6: false }
        }
    )
    deepStrictEqual(
       rt.plget_j([ 'dict','dict' ]),
       { k5: true, k6: false }
    )



    var jorig = {
        nu:null,
        num:77777,
        bool:true,
        str:'ssssss',
        ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}} ],
        dict: {
            nu:null,
            num:1.5,
            str:'s',
            ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}}],
            dict:{k5:true,k6:false }
        },
    }

    var j = {};
    var rt = forest.creat_jtree(j);

    rt.append(null,"nu");
    rt.append(77777,"num");
    rt.append(true,"bool");
    rt.append('ssssss',"str");
    deepStrictEqual(rt.calc(),{ nu: null, num: 77777, bool: true, str: 'ssssss' })

    var arynd = rt.append([0,'s',[10,20,30]],'ary');

    var midnd = arynd.koiget_chnd(2);
    var lbnd  = midnd.alsib(null);
    var rbnd  = midnd.arsib({k1:'v',k2:0,k3:null,k4:[],k5:{}});


    rt.append(
        {
            nu:null,
            num:1.5,
            str:'s',
            ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}}],
            dict:{k5:true,k6:false }
        },
        'dict'
    );
    deepStrictEqual(rt.calc(),jorig);


    var j = {};
    var rt = forest.creat_jtree(j);
    rt.plupdt([],[10,20,30]);
    deepStrictEqual(rt.calc(),[ 10, 20, 30 ])

    rt.pldel([1])
    deepStrictEqual(rt.calc(),[ 10,  30 ])


    var j = {
        nu:null,
        num:77777,
        bool:true,
        str:'ssssss',
        ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}} ],
        dict: {
            nu:null,
            num:1.5,
            str:'s',
            ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}}],
            dict:{k5:true,k6:false }
        },
    }


    var rt = forest.creat_jtree(j);

    deepStrictEqual(rt.clone().calc(),j);


    var j = {
        nu:null,
        num:77777,
        bool:true,
        str:'ssssss',
        ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}} ],
        dict: {
            nu:null,
            num:1.5,
            str:'s',
            ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}}],
            dict:{k5:true,k6:false }
        },
    }



    forest.ples(j)
    /*
    [
      [ [], [Function: is_dict], true ],
      [ [ 'nu' ], null, true ],
      [ [ 'num' ], 77777, true ],
      [ [ 'bool' ], true, true ],
      [ [ 'str' ], 'ssssss', true ],
      [ [ 'ary' ], [Function: isArray], true ],
      [ [ 'ary', 0 ], 0, true ],
      [ [ 'ary', 1 ], 's', true ],
      [ [ 'ary', 2 ], null, true ],
      [ [ 'ary', 3 ], [Function: isArray], true ],
      [ [ 'ary', 3, 0 ], 10, true ],
      [ [ 'ary', 3, 1 ], 20, true ],
      [ [ 'ary', 3, 2 ], 30, true ],
      [ [ 'ary', 4 ], [Function: is_dict], true ],
      [ [ 'ary', 4, 'k1' ], 'v', true ],
      [ [ 'ary', 4, 'k2' ], 0, true ],
      [ [ 'ary', 4, 'k3' ], null, true ],
      [ [ 'ary', 4, 'k4' ], [Function: isArray], true ],
      [ [ 'ary', 4, 'k5' ], [Function: is_dict], true ],
      [ [ 'dict' ], [Function: is_dict], true ],
      [ [ 'dict', 'nu' ], null, true ],
      [ [ 'dict', 'num' ], 1.5, true ],
      [ [ 'dict', 'str' ], 's', true ],
      [ [ 'dict', 'ary' ], [Function: isArray], true ],
      [ [ 'dict', 'ary', 0 ], 0, true ],
      [ [ 'dict', 'ary', 1 ], 's', true ],
      [ [ 'dict', 'ary', 2 ], null, true ],
      [ [ 'dict', 'ary', 3 ], [Function: isArray], true ],
      [ [ 'dict', 'ary', 3, 0 ], 10, true ],
      [ [ 'dict', 'ary', 3, 1 ], 20, true ],
      [ [ 'dict', 'ary', 3, 2 ], 30, true ],
      [ [ 'dict', 'ary', 4 ], [Function: is_dict], true ],
      [ [ 'dict', 'ary', 4, 'k1' ], 'v', true ],
      [ [ 'dict', 'ary', 4, 'k2' ], 0, true ],
      [ [ 'dict', 'ary', 4, 'k3' ], null, true ],
      [ [ 'dict', 'ary', 4, 'k4' ], [Function: isArray], true ],
      [ [ 'dict', 'ary', 4, 'k5' ], [Function: is_dict], true ],
      [ [ 'dict', 'dict' ], [Function: is_dict], true ],
      [ [ 'dict', 'dict', 'k5' ], true, true ],
      [ [ 'dict', 'dict', 'k6' ], false, true ]
    ]
    */

    forest.ples_full(j)
    /*
    [
      [
        [],
        {
          nu: null,
          num: 77777,
          bool: true,
          str: 'ssssss',
          ary: [Array],
          dict: [Object]
        },
        true
      ],
      [ [ 'nu' ], null, true ],
      [ [ 'num' ], 77777, true ],
      [ [ 'bool' ], true, true ],
      [ [ 'str' ], 'ssssss', true ],
      [ [ 'ary' ], [ 0, 's', null, [Array], [Object] ], true ],
      [ [ 'ary', 0 ], 0, true ],
      [ [ 'ary', 1 ], 's', true ],
      [ [ 'ary', 2 ], null, true ],
      [ [ 'ary', 3 ], [ 10, 20, 30 ], true ],
      [ [ 'ary', 3, 0 ], 10, true ],
      [ [ 'ary', 3, 1 ], 20, true ],
      [ [ 'ary', 3, 2 ], 30, true ],
      [ [ 'ary', 4 ], { k1: 'v', k2: 0, k3: null, k4: [], k5: {} }, true ],
      [ [ 'ary', 4, 'k1' ], 'v', true ],
      [ [ 'ary', 4, 'k2' ], 0, true ],
      [ [ 'ary', 4, 'k3' ], null, true ],
      [ [ 'ary', 4, 'k4' ], [], true ],
      [ [ 'ary', 4, 'k5' ], {}, true ],
      [
        [ 'dict' ],
        { nu: null, num: 1.5, str: 's', ary: [Array], dict: [Object] },
        true
      ],
      [ [ 'dict', 'nu' ], null, true ],
      [ [ 'dict', 'num' ], 1.5, true ],
      [ [ 'dict', 'str' ], 's', true ],
      [ [ 'dict', 'ary' ], [ 0, 's', null, [Array], [Object] ], true ],
      [ [ 'dict', 'ary', 0 ], 0, true ],
      [ [ 'dict', 'ary', 1 ], 's', true ],
      [ [ 'dict', 'ary', 2 ], null, true ],
      [ [ 'dict', 'ary', 3 ], [ 10, 20, 30 ], true ],
      [ [ 'dict', 'ary', 3, 0 ], 10, true ],
      [ [ 'dict', 'ary', 3, 1 ], 20, true ],
      [ [ 'dict', 'ary', 3, 2 ], 30, true ],
      [
        [ 'dict', 'ary', 4 ],
        { k1: 'v', k2: 0, k3: null, k4: [], k5: {} },
        true
      ],
      [ [ 'dict', 'ary', 4, 'k1' ], 'v', true ],
      [ [ 'dict', 'ary', 4, 'k2' ], 0, true ],
      [ [ 'dict', 'ary', 4, 'k3' ], null, true ],
      [ [ 'dict', 'ary', 4, 'k4' ], [], true ],
      [ [ 'dict', 'ary', 4, 'k5' ], {}, true ],
      [ [ 'dict', 'dict' ], { k5: true, k6: false }, true ],
      [ [ 'dict', 'dict', 'k5' ], true, true ],
      [ [ 'dict', 'dict', 'k6' ], false, true ]
    ]
    */



    var jvali = {
        ary: [
                {
                            s:(v,kori,pl,k,i,self) => typeof(v)==='string',
                            rng:(v,kori,pl,k,i,self) =>(v>=10) && (v<=20)
                },
                (v,kori,pl,k,i,self) => v.length===3,
                    (v,kori,pl,k,i,self) => Object.keys(v).length ===1
            ]
    }

    var jrequired = {
        ary: [
                {
                            s:false,
                            rng:false
                },
            false
            ]
    }

    var validator = forest.creat_validator(jvali,jrequired);
    let dump      = validator.dump_for_validator()
    console.dir(dump,{depth:null})

    /*
    {
      jvali: {
        ary: [
          {
            s: "(v,kori,pl,k,i,self) => typeof(v)==='string'",
            rng: '(v,kori,pl,k,i,self) =>(v>=10) && (v<=20)'
          },
          '(v,kori,pl,k,i,self) => v.length===3',
          '(v,kori,pl,k,i,self) => Object.keys(v).length ===1'
        ]
      },
      jrequired: [
        [ [], true ],
        [ [ 'ary' ], true ],
        [ [ 'ary', 0 ], true ],
        [ [ 'ary', 0, 's' ], false ],
        [ [ 'ary', 0, 'rng' ], false ],
        [ [ 'ary', 1 ], false ],
        [ [ 'ary', 2 ], true ]
      ]
    }
    */

    var validator = forest.load_validator_from_dump(dump)
    /*
    //this is for load code from database,only FOR test using

    > var validator = forest.load_validator_from_dump(dump)
    Dangerous!!

    > validator.calc()
    {
      ary: [
        { s: [Function (anonymous)], rng: [Function (anonymous)] },
        [Function (anonymous)],
        [Function (anonymous)]
      ]
    }
    */




    var j = {
        nu:null,
        num:77777,
        bool:true,
        str:'ssssss',
        ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}} ],
        dict: {
            nu:null,
            num:1.5,
            str:'s',
            ary: [0,'s',null,[10,20,30],{k1:'v',k2:0,k3:null,k4:[],k5:{}}],
            dict:{k5:true,k6:false }
        },
    }


    var rt = forest.creat_jtree(j);

    deepStrictEqual(
         rt.calc_treat_null_as_empty(),
        {
          num: 77777,
          bool: true,
          str: 'ssssss',
          ary: [ 0, 's', [ 10, 20, 30 ], { k1: 'v', k2: 0, k4: [], k5: {} } ],
          dict: {
            num: 1.5,
            str: 's',
            ary: [ 0, 's', [ 10, 20, 30 ], { k1: 'v', k2: 0, k4: [], k5: {} } ],
            dict: { k5: true, k6: false }
          }
        }
    )


    > rt.pl_nudel(["dict"])
    Node(8) [7 %ljqoxiwg:7% ] [
      Forest {
        fid: 'ljqoxiwgxbaqipdjeiwvtqvmhghrkwyajdze',
        max_size: 10000,
        idpool: { minid_: 1, maxid_: 10000, used_: 40, lefted_: 9960 }
      },
      7,
      false,
      60,
      null,
      'dict',
      undefined,
      true
    ]
    > rt.calc_treat_null_as_empty()
    {
      num: 77777,
      bool: true,
      str: 'ssssss',
      ary: [ 0, 's', [ 10, 20, 30 ], { k1: 'v', k2: 0, k4: [], k5: {} } ]
    }
    > rt.pl_nu_recover_container(["dict"])
    Node(8) [7 %ljqoxiwg:7% ] [
      Forest {
        fid: 'ljqoxiwgxbaqipdjeiwvtqvmhghrkwyajdze',
        max_size: 10000,
        idpool: { minid_: 1, maxid_: 10000, used_: 40, lefted_: 9960 }
      },
      7,
      false,
      60,
      undefined,
      'dict',
      undefined,
      true
    ]
    > rt.calc_treat_null_as_empty()
    {
      num: 77777,
      bool: true,
      str: 'ssssss',
      ary: [ 0, 's', [ 10, 20, 30 ], { k1: 'v', k2: 0, k4: [], k5: {} } ],
      dict: {
        num: 1.5,
        str: 's',
        ary: [ 0, 's', [Array], [Object] ],
        dict: { k5: true, k6: false }
      }
    }
    >


    var t = creat_jtree({y:Symbol("sym"),bi:[6n,Symbol("sym"),7n]})


    > t.calc()
    { y: Symbol(sym), bi: [ 6n, Symbol(sym), 7n ] }
    > 
    > t.dump_for_light_nvdbj()
    { y: 'sym', bi: [ '6', 'sym', '7' ] }
    > 
    > 

METHODS

forest

    forest.creat_jtree               forest.creat_validator           forest.load_validator_from_dump
    forest.ples                      forest.ples_full

node

        nd._is_ele                                 nd._is_prop                                nd.alsib
        nd.alsib_ary                               nd.alsib_dict                              nd.alsib_leaf
        nd.append                                  nd.append_ary                              nd.append_dict
        nd.append_leaf                             nd.arsib                                   nd.arsib_ary
        nd.arsib_dict                              nd.arsib_leaf                              nd.calc
        nd.calc_treat_null_as_empty                nd.clone                                   nd.constructor
        nd.creat_jtmpl                             nd.dump_for_validator                      nd.idx_
        nd.is_ary                                  nd.is_container                            nd.is_dict
        nd.is_ele                                  nd.is_leaf                                 nd.is_optional
        nd.is_prop                                 nd.is_required                             nd.is_root
        nd.key_                                    nd.koi_                                    nd.koiget_chnd
        nd.optional                                nd.pl_                                     nd.pl_disconn
        nd.pl_nu_recover_container                 nd.pl_nudel                                nd.pldel
        nd.plget_j                                 nd.plget_jr                                nd.plget_nd
        nd.plget_r                                 nd.plget_v                                 nd.plget_vr
        nd.pls_                                    nd.plset                                   nd.plset_dflt
        nd.plupdt                                  nd.require                                 nd.required_
        nd.reset_calced                            nd.set_typ_to_ary                          nd.set_typ_to_dict
        nd.typ_                                    nd.val_


        nd.dump_for_light_nvdbj
           //only support symbol bigint func-like
        nd.dump_for_light_nvdbj_treat_null_as_empty
           //only support symbol bigint func-like   

        nd.dtype_
           //this is USELES in this pkg, just for compatible WITH nvdb
           //   its used in nvdb 
           //   nvdb can directly save map/set/typed-array

API

            {
              init: [Function: init],
              T: {
                N2SEQ: {
                  un: 0,
                  nu: 10,
                  bool: 20,
                  t: 21,
                  f: 22,
                  num: 30,
                  int: 31,
                  float: 32,
                  str: 40,
                  ary: 50,
                  dict: 60
                },
                SEQ2N: {
                  '0': 'un',
                  '10': 'nu',
                  '20': 'bool',
                  '21': 't',
                  '22': 'f',
                  '30': 'num',
                  '31': 'int',
                  '32': 'float',
                  '40': 'str',
                  '50': 'ary',
                  '60': 'dict'
                },
                is_unset: [Function: is_unset],
                is_ary: [Function: is_ary],
                is_dict: [Function: is_dict],
                is_prim: [Function: is_prim]
              },
              _pl: {
                haspl: [Function: haspl],
                plget: [Function: plget],
                pldflt: [Function: pldflt]
              },
              _is: {
                typof: [Function: typof],
                instof: [Function: instof],
                _t: true,
                _f: false,
                _nu: null,
                _un: undefined,
                _A: [Function: Array],
                creat_nuary: [Function: creat_nuary],
                _O: [Function: Object],
                _N: [Function: Number],
                _Y: [Function: Symbol],
                _S: [Function: String],
                _J: Object [JSON] {},
                J2S: [Function: stringify],
                S2J: [Function: parse],
                jdcp: [Function: jdcp],
                jes2d: [Function: jes2d],
                is_container: [Function: is_container],
                is_ary: [Function: isArray],
                _is_empty_ary: [Function: _is_empty_ary],
                is_empty_ary: [Function: is_empty_ary],
                is_dict: [Function: is_dict],
                __is_empty_dict: [Function: __is_empty_dict],
                _is_empty_dict: [Function: _is_empty_dict],
                is_empty_dict: [Function: is_empty_dict],
                _is_prim: [Function: _is_prim],
                is_prim: [Function: is_prim],
                is_unnu: [Function: is_unnu],
                is_un: [Function: is_un],
                is_nu: [Function: is_nu],
                is_bool: [Function: is_bool],
                is_tru: [Function: is_tru],
                is_fls: [Function: is_fls],
                is_str: [Function: is_str],
                is_num: [Function: is_num],
                is_int: [Function: is_int],
                is_ary_idx: [Function: is_ary_idx],
                is_float: [Function: is_float],
                _is_leaf: [Function: _is_leaf],
                is_leaf: [Function: is_leaf],
                is_json: [Function: is_json],
                is_cls_or_func: [Function: is_cls_or_func],
                is_sync_validator: [Function: is_sync_validator],
                is_async_validator: [Function: is_async_validator]
                is_sym,
                is_bigint
              }
            }

LICENSE

  • ISC