@lazy-random/rng-abstract-core
Version:
1 lines • 2.98 kB
Source Map (JSON)
{"version":3,"file":"index.umd.development.cjs","sources":["../src/index.ts"],"sourcesContent":["\nexport interface IRNGLike\n{\n\tnext(): number\n\n\tseed?(seed?, opts?, ...argv)\n}\n\nexport abstract class RNGCore implements IRNGLike\n{\n\tprotected constructor();\n\tprotected constructor(seed?);\n\tprotected constructor(seed?, opts?, ...argv);\n\tprotected constructor(seed?, opts?, ...argv)\n\t{\n\n\t}\n\n\tprotected _init_check(seed?, opts?, ...argv)\n\t{\n\n\t}\n\n\tprotected _init(seed?, opts?, ...argv)\n\t{\n\t\tthis._init_check(seed, opts, ...argv);\n\t}\n\n\tpublic static create(seed?, opts?, ...argv)\n\t{\n\t\tif (this === RNGCore || !this)\n\t\t{\n\t\t\tthrow new ReferenceError('RNG is abstract class');\n\t\t}\n\n\t\t// @ts-ignore\n\t\treturn new this(seed, opts, ...argv);\n\t}\n\n\tpublic get name(): string\n\t{\n\t\tthrow new Error('RNG.name must be overridden');\n\t}\n\n\tpublic get options(): unknown\n\t{\n\t\treturn null;\n\t}\n\n\tpublic get seedable(): boolean\n\t{\n\t\treturn null;\n\t}\n\n\t/**\n\t * should return a float between 0 ~ 1\n\t */\n\t// @ts-ignore\n\tpublic abstract next(): number\n\t{\n\t\tthrow new ReferenceError('RNG.next must be overridden');\n\t}\n\n\tpublic seed(seed?, opts?, ...argv)\n\t{\n\t\t//throw new ReferenceError('RNG.seed must be overridden')\n\t}\n\n\tpublic clone(seed?, opts?, ...argv)\n\t{\n\t\tthrow new ReferenceError('RNG.clone must be overridden');\n\t}\n\n\tprotected _seedAuto(seed: number, opts?, ...argv): number;\n\tprotected _seedAuto(seed: unknown, opts?, ...argv): string;\n\tprotected _seedAuto(seed?, opts?, ...argv): number | string;\n\tprotected _seedAuto(seed?, opts?, ...argv): number | string\n\t{\n\t\tif (seed && typeof seed === 'number')\n\t\t{\n\t\t\treturn this._seedNum(seed, opts, ...argv);\n\t\t}\n\n\t\treturn this._seedStr(seed, opts, ...argv);\n\t}\n\n\t/**\n\t * return number for make new seed\n\t */\n\tprotected _seedNum(seed?, opts?, ...argv): number\n\t{\n\t\tthrow new ReferenceError('RNG._seedNum must be overridden');\n\t}\n\n\t/**\n\t * return string for make new seed\n\t */\n\tprotected _seedStr(seed?, opts?, ...argv): string\n\t{\n\t\tthrow new ReferenceError('RNG._seedStr must be overridden');\n\t}\n\n}\n\nexport default RNGCore;\n\n"],"names":["_init_check","seed","opts","argv","_init","create","ReferenceError","name","Error","options"],"mappings":";;;;;;;;cA4BkCA,CAAAC,IAAA,EAAAC,IAAA,EAAA,GAAAC,IAAA;CAahCC,EAAAA,KAAAA,CAAAH,IAAA,EAAAC,IAAA,KAAAC,IAAA,EAAA;CAGiB,IAAA,IAAA,CAAAH,WAAA,CAAAC,IAAA,EAAAC,IAAA,KAAAC,IAAA,CAAA,CAAA;CAKlB,GAAA;CAGC,EAAA,OAAAE,MAAAA,CAAAJ,IAAA,EAAAC,IAAA,EAAA,GAAAC,IAAA,EAAA;;CAIE,MAAA,MAAA,IAAAG,cAAA,CAAA,uBAAA,CAAA,CAAA;CAEiB,KAAA;;gBAOsC,IAAA,CAAAL,IAAA,EAAAC,IAAA,EAAA,GAAAC,IAAA,CAAA,CAAA;;OAKzDI,IAAA,GAAA;WACAC,IAAAA,KAAA,CAAA,6BAAA,CAAA,CAAA;CAKS,GAAA;OAIRC,OAAOA,GAAA;YAGR,IAAO,CAAA;;;CAME,IAAA,OAAA,IAAS,CAAA;CAElB,GAAA;CAGD;;;;;CAUD,IAAA,MAAA,IAAAH,cAAA,CAAA,6BAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}