1.0.0 • Published 2 years ago

nv-facutil-simple-promise v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

nv-facutil-simple-promise

  • simple version of nv-facutil-promise / nv-facutil-proposition-promise / nv-facutil-cycle-promise

install

  • npm install nv-facutil-simple-promise

usage

example

            > var p = prms.dly_rtrn(10000,888)
            > p
            Promise {
              <pending>,
              [Symbol(async_id_symbol)]: 459,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > p
            Promise {
              888,
              [Symbol(async_id_symbol)]: 459,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > 
            > var [cond,r] = prms.goize(p)
            Uncaught TypeError: object is not iterable (cannot read property Symbol(Symbol.iterator))
            > 
            > prms.goize(p)
            Promise {
              <pending>,
              [Symbol(async_id_symbol)]: 723,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > await prms.goize(p)
            [ true, 888 ]
            > 
            > var ka = prms.ka(5000)
            > ka
            Promise {
              <pending>,
              renew: [Function (anonymous)],
              [Symbol(async_id_symbol)]: 893,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > ka.renew()
            false
            > ka
            Promise {
              ___TmOutReturn___ {},
              renew: [Function (anonymous)],
              [Symbol(async_id_symbol)]: 893,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > 
            > var ka = prms.ka(5000)
            undefined
            > ka.renew()
            true
            > ka.renew()
            true
            > ka.renew()
            true
            > ka.renew()
            true
            > ka.renew()
            true
            > ka.renew()
            true
            > ka
            Promise {
              <pending>,
              renew: [Function (anonymous)],
              [Symbol(async_id_symbol)]: 980,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > ka.renew()
            true
            > ka.renew()
            true
            > ka
            Promise {
              <pending>,
              renew: [Function (anonymous)],
              [Symbol(async_id_symbol)]: 980,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > ka
            Promise {
              ___TmOutReturn___ {},
              renew: [Function (anonymous)],
              [Symbol(async_id_symbol)]: 980,
              [Symbol(trigger_async_id_symbol)]: 5,
              [Symbol(destroyed)]: { destroyed: false }
            }
            > 

    var handle = ()=> {
        let [p,rs] = prms._ps();
        let dly = Math.random()*10000;
        console.log("dly:",dly,)
        prms._set_tmout(
           ()=> {rs(999)},
           dly
        );
        return(p)
    }


    > var p = prms.aretry_with_ctx(handle,5000,5)
    dly: 8004.019933347941
    > dly: 1442.6227772246737
    Promise {
      [ true, 999 ],
      [Symbol(async_id_symbol)]: 147,
      [Symbol(trigger_async_id_symbol)]: 5,
      [Symbol(destroyed)]: { destroyed: false }
    }
    >


    > var p = prms.aretry_with_ctx(handle,5000,1)
    dly: 9003.00142690666
    > p
    Promise {
      <pending>,
      [Symbol(async_id_symbol)]: 391,
      [Symbol(trigger_async_id_symbol)]: 5,
      [Symbol(destroyed)]: { destroyed: false }
    }
    > p
    Promise {
      [ false, ___TmOutReturn___ {} ],
      [Symbol(async_id_symbol)]: 391,
      [Symbol(trigger_async_id_symbol)]: 5,
      [Symbol(destroyed)]: { destroyed: false }
    }
    >


 

API

            > prms
            {
              _P: [Function: Promise],
              _DT: [Function: Date],
              _now: [Function: _now],
              _set_tmout: [Function: setTimeout] {
                [Symbol(nodejs.util.promisify.custom)]: [Getter]
              },
              _clr_tmout: [Function: clearTimeout],
              _E: [Function: Error] { stackTraceLimit: 10 },
              _creat_err: [Function: _creat_err],
              is_tmout_rtrn: [Function: is_tmout_rtrn],
              creat_tmout_rtrn: [Function: creat_tmout_rtrn],
              _psj: [Function: _psj],
              _ps: [Function: _ps],
              _pj: [Function: _pj],
              _tmoutp: [Function: _tmoutp],
              wait: [Function: wait],
              tmoutize: [Function: tmoutize],
              aretry_with_args_ary: [AsyncFunction: aretry_with_args_ary],
              aretry_with_ctx: [AsyncFunction: aretry_with_ctx],
              ka: [Function: ka],
              not: [Function: not],
              goize: [Function: goize],
              dly_rtrn: [Function: dly_rtrn],
              dly_thrw: [Function: dly_thrw]
            }
            >

LICENSE

  • ISC