ts-data-forge 10.0.0 → 11.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/array/impl/array-utils-creation.d.mts +3 -3
- package/dist/array/impl/array-utils-creation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-creation.mjs.map +1 -1
- package/dist/array/impl/array-utils-element-access.d.mts +4 -4
- package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
- package/dist/{guard/as-length-bounded-array.d.mts → array/impl/array-utils-length-bounded-array-cast.d.mts} +9 -9
- package/dist/array/impl/array-utils-length-bounded-array-cast.d.mts.map +1 -0
- package/dist/{guard/as-length-bounded-array.mjs → array/impl/array-utils-length-bounded-array-cast.mjs} +2 -2
- package/dist/array/impl/array-utils-length-bounded-array-cast.mjs.map +1 -0
- package/dist/{guard/is-length-bounded-array.d.mts → array/impl/array-utils-length-bounded-array-guard.d.mts} +13 -13
- package/dist/array/impl/array-utils-length-bounded-array-guard.d.mts.map +1 -0
- package/dist/{guard/is-length-bounded-array.mjs → array/impl/array-utils-length-bounded-array-guard.mjs} +1 -1
- package/dist/array/impl/array-utils-length-bounded-array-guard.mjs.map +1 -0
- package/dist/array/impl/array-utils-modification.d.mts +9 -9
- package/dist/array/impl/array-utils-modification.d.mts.map +1 -1
- package/dist/array/impl/array-utils-modification.mjs.map +1 -1
- package/dist/array/impl/array-utils-reducing-value.d.mts +9 -9
- package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
- package/dist/array/impl/array-utils-size.d.mts +3 -3
- package/dist/array/impl/array-utils-size.mjs.map +1 -1
- package/dist/array/impl/array-utils-slicing.d.mts +9 -9
- package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
- package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
- package/dist/array/impl/array-utils-transformation.d.mts +16 -10
- package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
- package/dist/array/impl/index.d.mts +2 -0
- package/dist/array/impl/index.d.mts.map +1 -1
- package/dist/array/impl/index.mjs +2 -0
- package/dist/array/impl/index.mjs.map +1 -1
- package/dist/entry-point.mjs +1 -3
- package/dist/entry-point.mjs.map +1 -1
- package/dist/guard/index.d.mts +0 -3
- package/dist/guard/index.d.mts.map +1 -1
- package/dist/guard/index.mjs +0 -3
- package/dist/guard/index.mjs.map +1 -1
- package/dist/index.d.mts +1 -0
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -3
- package/dist/index.mjs.map +1 -1
- package/dist/number/branded-types/finite-number.d.mts +47 -61
- package/dist/number/branded-types/finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/finite-number.mjs +37 -41
- package/dist/number/branded-types/finite-number.mjs.map +1 -1
- package/dist/number/branded-types/int.d.mts +40 -46
- package/dist/number/branded-types/int.d.mts.map +1 -1
- package/dist/number/branded-types/int.mjs +29 -31
- package/dist/number/branded-types/int.mjs.map +1 -1
- package/dist/number/branded-types/int16.d.mts +65 -58
- package/dist/number/branded-types/int16.d.mts.map +1 -1
- package/dist/number/branded-types/int16.mjs +49 -45
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.d.mts +65 -58
- package/dist/number/branded-types/int32.d.mts.map +1 -1
- package/dist/number/branded-types/int32.mjs +49 -45
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/negative-finite-number.d.mts +68 -59
- package/dist/number/branded-types/negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/negative-finite-number.mjs +52 -46
- package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/negative-int.d.mts +60 -48
- package/dist/number/branded-types/negative-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-int.mjs +40 -36
- package/dist/number/branded-types/negative-int.mjs.map +1 -1
- package/dist/number/branded-types/negative-safe-int.d.mts +57 -56
- package/dist/number/branded-types/negative-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-safe-int.mjs +40 -41
- package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.d.mts +74 -64
- package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.mjs +58 -51
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.d.mts +64 -57
- package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int16.mjs +47 -43
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.d.mts +64 -58
- package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int32.mjs +47 -44
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.d.mts +64 -54
- package/dist/number/branded-types/non-positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.mjs +48 -41
- package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-int.d.mts +41 -146
- package/dist/number/branded-types/non-positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-int.mjs +27 -107
- package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.d.mts +54 -53
- package/dist/number/branded-types/non-positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.mjs +37 -39
- package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.d.mts +62 -49
- package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.mjs +46 -37
- package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int.d.mts +51 -38
- package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int.mjs +31 -27
- package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int16.d.mts +52 -53
- package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int16.mjs +36 -39
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.d.mts +52 -54
- package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int32.mjs +36 -40
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.d.mts +53 -54
- package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.mjs +36 -40
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.d.mts +52 -53
- package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.mjs +35 -39
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.d.mts +52 -53
- package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.mjs +35 -39
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.d.mts +74 -63
- package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/positive-finite-number.mjs +58 -50
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.d.mts +46 -68
- package/dist/number/branded-types/positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int.mjs +34 -49
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.d.mts +61 -57
- package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int16.mjs +44 -43
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.d.mts +61 -57
- package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int32.mjs +44 -43
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.d.mts +62 -57
- package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-safe-int.mjs +45 -43
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.d.mts +61 -57
- package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint16.mjs +44 -43
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.d.mts +61 -58
- package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint32.mjs +44 -44
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.d.mts +43 -62
- package/dist/number/branded-types/safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/safe-int.mjs +35 -42
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.d.mts +62 -57
- package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
- package/dist/number/branded-types/safe-uint.mjs +46 -44
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.d.mts +63 -50
- package/dist/number/branded-types/uint.d.mts.map +1 -1
- package/dist/number/branded-types/uint.mjs +42 -39
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.d.mts +60 -58
- package/dist/number/branded-types/uint16.d.mts.map +1 -1
- package/dist/number/branded-types/uint16.mjs +44 -43
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.d.mts +59 -55
- package/dist/number/branded-types/uint32.d.mts.map +1 -1
- package/dist/number/branded-types/uint32.mjs +42 -42
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/int8.d.mts +56 -65
- package/dist/number/enum/int8.d.mts.map +1 -1
- package/dist/number/enum/int8.mjs +44 -43
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.d.mts +60 -58
- package/dist/number/enum/uint8.d.mts.map +1 -1
- package/dist/number/enum/uint8.mjs +44 -43
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/string/index.d.mts +2 -0
- package/dist/string/index.d.mts.map +1 -0
- package/dist/string/index.mjs +2 -0
- package/dist/string/index.mjs.map +1 -0
- package/dist/string/str.d.mts +273 -0
- package/dist/string/str.d.mts.map +1 -0
- package/dist/string/str.mjs +42 -0
- package/dist/string/str.mjs.map +1 -0
- package/package.json +31 -92
- package/src/array/impl/array-utils-creation.mts +2 -1
- package/src/array/impl/array-utils-element-access.mts +3 -3
- package/src/array/impl/array-utils-element-access.test.mts +3 -3
- package/src/{guard/as-length-bounded-array.mts → array/impl/array-utils-length-bounded-array-cast.mts} +9 -9
- package/src/{guard/as-length-bounded-array.test.mts → array/impl/array-utils-length-bounded-array-cast.test.mts} +2 -2
- package/src/{guard/is-length-bounded-array.mts → array/impl/array-utils-length-bounded-array-guard.mts} +12 -12
- package/src/{guard/is-length-bounded-array.test.mts → array/impl/array-utils-length-bounded-array-guard.test.mts} +2 -2
- package/src/array/impl/array-utils-modification.mts +9 -8
- package/src/array/impl/array-utils-modification.test.mts +6 -1
- package/src/array/impl/array-utils-reducing-value.mts +9 -9
- package/src/array/impl/array-utils-size.mts +2 -2
- package/src/array/impl/array-utils-slicing.mts +24 -13
- package/src/array/impl/array-utils-transformation.mts +18 -12
- package/src/array/impl/array-utils-transformation.test.mts +12 -12
- package/src/array/impl/index.mts +2 -0
- package/src/guard/index.mts +0 -3
- package/src/index.mts +1 -0
- package/src/number/branded-types/finite-number.mts +47 -61
- package/src/number/branded-types/int.mts +40 -46
- package/src/number/branded-types/int16.mts +65 -58
- package/src/number/branded-types/int32.mts +65 -58
- package/src/number/branded-types/negative-finite-number.mts +68 -68
- package/src/number/branded-types/negative-int.mts +60 -57
- package/src/number/branded-types/negative-safe-int.mts +57 -65
- package/src/number/branded-types/non-negative-finite-number.mts +74 -64
- package/src/number/branded-types/non-negative-int16.mts +64 -57
- package/src/number/branded-types/non-negative-int32.mts +64 -58
- package/src/number/branded-types/non-positive-finite-number.mts +64 -54
- package/src/number/branded-types/non-positive-int.mts +41 -146
- package/src/number/branded-types/non-positive-safe-int.mts +54 -53
- package/src/number/branded-types/non-zero-finite-number.mts +62 -51
- package/src/number/branded-types/non-zero-int.mts +51 -38
- package/src/number/branded-types/non-zero-int16.mts +52 -53
- package/src/number/branded-types/non-zero-int32.mts +52 -54
- package/src/number/branded-types/non-zero-safe-int.mts +53 -54
- package/src/number/branded-types/non-zero-uint16.mts +52 -53
- package/src/number/branded-types/non-zero-uint32.mts +52 -53
- package/src/number/branded-types/positive-finite-number.mts +74 -63
- package/src/number/branded-types/positive-int.mts +46 -68
- package/src/number/branded-types/positive-int16.mts +61 -57
- package/src/number/branded-types/positive-int32.mts +61 -57
- package/src/number/branded-types/positive-safe-int.mts +62 -57
- package/src/number/branded-types/positive-uint16.mts +61 -57
- package/src/number/branded-types/positive-uint32.mts +61 -58
- package/src/number/branded-types/safe-int.mts +43 -62
- package/src/number/branded-types/safe-uint.mts +62 -57
- package/src/number/branded-types/uint.mts +63 -50
- package/src/number/branded-types/uint16.mts +60 -58
- package/src/number/branded-types/uint32.mts +59 -55
- package/src/number/enum/int8.mts +56 -65
- package/src/number/enum/uint8.mts +60 -58
- package/src/string/index.mts +1 -0
- package/src/string/str.mts +371 -0
- package/src/string/str.test.mts +215 -0
- package/dist/guard/as-length-bounded-array.d.mts.map +0 -1
- package/dist/guard/as-length-bounded-array.mjs.map +0 -1
- package/dist/guard/is-length-bounded-array.d.mts.map +0 -1
- package/dist/guard/is-length-bounded-array.mjs.map +0 -1
- package/dist/guard/is-length-bounded-string.d.mts +0 -163
- package/dist/guard/is-length-bounded-string.d.mts.map +0 -1
- package/dist/guard/is-length-bounded-string.mjs +0 -7
- package/dist/guard/is-length-bounded-string.mjs.map +0 -1
- package/src/guard/is-length-bounded-string.mts +0 -199
- package/src/guard/is-length-bounded-string.test.mts +0 -170
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"non-zero-int.mjs","sources":["../../../src/number/branded-types/non-zero-int.mts"],"sourcesContent":["import { type NonZeroInt as TtfImported_NonZeroInt } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type NonZeroInt = TtfImported_NonZeroInt;\n\ntype ElementType = NonZeroInt;\n\nconst typeNameInMessage = 'a non-zero integer';\n\nconst {\n abs,\n castType,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n randomNonZero: random,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n number,\n number\n>({\n integerOrSafeInteger: 'Integer',\n nonZero: true,\n MIN_VALUE: -Number.MAX_VALUE,\n MAX_VALUE: Number.MAX_VALUE,\n typeNameInMessage,\n} as const);\n\n/**\n *
|
|
1
|
+
{"version":3,"file":"non-zero-int.mjs","sources":["../../../src/number/branded-types/non-zero-int.mts"],"sourcesContent":["import { type NonZeroInt as TtfImported_NonZeroInt } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type NonZeroInt = TtfImported_NonZeroInt;\n\ntype ElementType = NonZeroInt;\n\nconst typeNameInMessage = 'a non-zero integer';\n\nconst {\n abs,\n castType,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n randomNonZero: random,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n number,\n number\n>({\n integerOrSafeInteger: 'Integer',\n nonZero: true,\n MIN_VALUE: -Number.MAX_VALUE,\n MAX_VALUE: Number.MAX_VALUE,\n typeNameInMessage,\n} as const);\n\n/**\n * Type guard that checks if a value is a non-zero integer.\n *\n * Returns `true` for a non-zero integer — a value with no fractional component,\n * including values outside the safe integer range (unlike `SafeInt`).\n *\n * @param value - The value to check\n * @returns `true` if the value is a non-zero integer, `false` otherwise\n */\nexport const isNonZeroInt = is;\n\n/**\n * Casts a `number` to the `NonZeroInt` branded type.\n *\n * Validates that the value is a non-zero integer and returns it with the\n * `NonZeroInt` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as a `NonZeroInt`\n * @throws {TypeError} If the value is not a non-zero integer\n */\nexport const asNonZeroInt = castType;\n\n/**\n * Namespace providing type-safe operations for the `NonZeroInt` branded type.\n *\n * The `NonZeroInt` type represents a non-zero integer. Division (`div`) uses\n * floor division.\n *\n * Unlike `SafeInt`, `NonZeroInt` allows values outside the safe integer range\n * (±2^53 − 1), so very large magnitudes may lose precision in JavaScript's\n * `number` type.\n */\nexport const NonZeroInt = {\n /**\n * Type guard that checks if a value is a non-zero integer.\n *\n * @param value - The value to check\n * @returns `true` if the value is a non-zero integer, `false` otherwise\n * @see {@link isNonZeroInt} for usage examples\n */\n is,\n\n /**\n * Returns the absolute value of a non-zero integer.\n *\n * The result is non-negative and keeps the `NonZeroInt` brand. Note that\n * `Math.abs(Number.MIN_SAFE_INTEGER)` exceeds `Number.MAX_SAFE_INTEGER`, so\n * use `SafeInt` for guaranteed precision.\n *\n * @param a - The non-zero integer value\n * @returns The absolute value as a non-negative `NonZeroInt`\n */\n abs,\n\n /**\n * Returns the smallest of the given non-zero integers.\n *\n * @param values - The non-zero integers to compare (at least one required)\n * @returns The smallest value as a `NonZeroInt`\n */\n min: min_,\n\n /**\n * Returns the largest of the given non-zero integers.\n *\n * @param values - The non-zero integers to compare (at least one required)\n * @returns The largest value as a `NonZeroInt`\n */\n max: max_,\n\n /**\n * Generates a random `NonZeroInt` within the given range.\n *\n * The range is inclusive on both ends.\n *\n * @param min - The minimum value (inclusive)\n * @param max - The maximum value (inclusive)\n * @returns A random `NonZeroInt` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as a `NonZeroInt` (floored\n * to an integer).\n *\n * @param a - The base non-zero integer\n * @param b - The exponent non-zero integer\n * @returns `a ** b` as a `NonZeroInt`\n */\n pow,\n\n /**\n * Multiplies two non-zero integers, returning `a * b` as a `NonZeroInt`.\n *\n * @param a - The first non-zero integer\n * @param b - The second non-zero integer\n * @returns The product of `a` and `b` as a `NonZeroInt`\n */\n mul,\n} as const;\n\nexpectType<\n keyof typeof NonZeroInt,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int',\n 'mul'\n >\n>('=');\n\nexpectType<\n typeof NonZeroInt,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<ElementType, 'int', 'mul'>\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,oBAAA;AAE1B,MAAM;AAAA,EACJ,GAAA;AAAA,EACA,QAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,aAAA,EAAe;AACjB,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,SAAA;AAAA,EACtB,OAAA,EAAS,IAAA;AAAA,EACT,SAAA,EAAW,CAAC,MAAA,CAAO,SAAA;AAAA,EACnB,WAAW,MAAA,CAAO,SAAA;AAAA,EAClB;AACF,CAAU,CAAA;AAWH,MAAM,YAAA,GAAe;AAYrB,MAAM,YAAA,GAAe;AAYrB,MAAM,UAAA,GAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQxB,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWL,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA;AACF;;;;"}
|
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import { type NonZeroInt16 as TtfImported_NonZeroInt16 } from 'ts-type-forge';
|
|
2
2
|
export type NonZeroInt16 = TtfImported_NonZeroInt16;
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
* range [-2^15, 2^15) excluding 0).
|
|
4
|
+
* Type guard that checks if a value is a non-zero integer in [-2^15, 2^15).
|
|
6
5
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* Returns `true` for a non-zero integer in [-2^15, 2^15) — a value with no
|
|
7
|
+
* fractional component.
|
|
8
|
+
*
|
|
9
|
+
* @param value - The value to check
|
|
10
|
+
* @returns `true` if the value is a non-zero integer in [-2^15, 2^15), `false` otherwise
|
|
9
11
|
*/
|
|
10
12
|
export declare const isNonZeroInt16: (a: number) => a is TtfImported_NonZeroInt16;
|
|
11
13
|
/**
|
|
12
|
-
* Casts a number to
|
|
14
|
+
* Casts a `number` to the `NonZeroInt16` branded type.
|
|
15
|
+
*
|
|
16
|
+
* Validates that the value is a non-zero integer in [-2^15, 2^15) and returns
|
|
17
|
+
* it with the `NonZeroInt16` brand. Throws a `TypeError` otherwise.
|
|
13
18
|
*
|
|
14
|
-
* @param value The value to cast
|
|
15
|
-
* @returns The value as a NonZeroInt16
|
|
16
|
-
* @throws {TypeError} If the value is not a non-zero integer in [-2^15, 2^15)
|
|
19
|
+
* @param value - The value to cast
|
|
20
|
+
* @returns The value as a `NonZeroInt16`
|
|
21
|
+
* @throws {TypeError} If the value is not a non-zero integer in [-2^15, 2^15)
|
|
17
22
|
*/
|
|
18
23
|
export declare const asNonZeroInt16: <N extends number>(x: N) => number & {
|
|
19
24
|
readonly "!=0": true;
|
|
@@ -33,90 +38,84 @@ export declare const asNonZeroInt16: <N extends number>(x: N) => number & {
|
|
|
33
38
|
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
34
39
|
}> & N;
|
|
35
40
|
/**
|
|
36
|
-
* Namespace providing type-safe
|
|
37
|
-
* signed integers.
|
|
41
|
+
* Namespace providing type-safe operations for the `NonZeroInt16` branded type.
|
|
38
42
|
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* 16-bit non-zero signed integer constraint, preventing zero results and
|
|
42
|
-
* overflow.
|
|
43
|
+
* The `NonZeroInt16` type represents a non-zero integer in [-2^15, 2^15).
|
|
44
|
+
* Division (`div`) uses floor division.
|
|
43
45
|
*/
|
|
44
46
|
export declare const NonZeroInt16: {
|
|
45
47
|
/**
|
|
46
|
-
* Type guard
|
|
48
|
+
* Type guard that checks if a value is a non-zero integer in [-2^15, 2^15).
|
|
47
49
|
*
|
|
48
|
-
* @param value The value to check
|
|
49
|
-
* @returns `true` if the value is a
|
|
50
|
-
*
|
|
50
|
+
* @param value - The value to check
|
|
51
|
+
* @returns `true` if the value is a non-zero integer in [-2^15, 2^15), `false` otherwise
|
|
52
|
+
* @see {@link isNonZeroInt16} for usage examples
|
|
51
53
|
*/
|
|
52
54
|
readonly is: (a: number) => a is TtfImported_NonZeroInt16;
|
|
53
55
|
/**
|
|
54
|
-
* The
|
|
55
|
-
*
|
|
56
|
-
* @readonly
|
|
56
|
+
* The smallest value representable as `NonZeroInt16`.
|
|
57
57
|
*/
|
|
58
58
|
readonly MIN_VALUE: number;
|
|
59
59
|
/**
|
|
60
|
-
* The
|
|
61
|
-
*
|
|
62
|
-
* @readonly
|
|
60
|
+
* The largest value representable as `NonZeroInt16`.
|
|
63
61
|
*/
|
|
64
62
|
readonly MAX_VALUE: number;
|
|
65
63
|
/**
|
|
66
|
-
* Returns the absolute value of a
|
|
64
|
+
* Returns the absolute value of a non-zero integer in [-2^15, 2^15).
|
|
67
65
|
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
66
|
+
* The result is non-negative and keeps the `NonZeroInt16` brand.
|
|
67
|
+
*
|
|
68
|
+
* @param a - The non-zero integer value
|
|
69
|
+
* @returns The absolute value as a non-negative `NonZeroInt16`
|
|
70
70
|
*/
|
|
71
71
|
readonly abs: (x: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>) => import("ts-type-forge").IntersectBrand<TtfImported_NonZeroInt16, import("ts-type-forge").PositiveNumber>;
|
|
72
72
|
/**
|
|
73
|
-
* Returns the
|
|
73
|
+
* Returns the smallest of the given non-zero integers.
|
|
74
74
|
*
|
|
75
|
-
* @param
|
|
76
|
-
* @
|
|
77
|
-
* @returns The minimum value as a NonZeroInt16.
|
|
75
|
+
* @param values - The non-zero integers to compare (at least one required)
|
|
76
|
+
* @returns The smallest value as a `NonZeroInt16`
|
|
78
77
|
*/
|
|
79
78
|
readonly min: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>[]) => TtfImported_NonZeroInt16;
|
|
80
79
|
/**
|
|
81
|
-
* Returns the
|
|
80
|
+
* Returns the largest of the given non-zero integers.
|
|
82
81
|
*
|
|
83
|
-
* @param
|
|
84
|
-
* @
|
|
85
|
-
* @returns The maximum value as a NonZeroInt16.
|
|
82
|
+
* @param values - The non-zero integers to compare (at least one required)
|
|
83
|
+
* @returns The largest value as a `NonZeroInt16`
|
|
86
84
|
*/
|
|
87
85
|
readonly max: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>[]) => TtfImported_NonZeroInt16;
|
|
88
86
|
/**
|
|
89
|
-
* Clamps a number
|
|
87
|
+
* Clamps a `number` into the `NonZeroInt16` range, rounding to the nearest
|
|
88
|
+
* integer and constraining the result to `[MIN_VALUE, MAX_VALUE]`.
|
|
90
89
|
*
|
|
91
|
-
* @param value The
|
|
92
|
-
* @returns The
|
|
90
|
+
* @param value - The value to clamp
|
|
91
|
+
* @returns The clamped value as a `NonZeroInt16`
|
|
93
92
|
*/
|
|
94
93
|
readonly clamp: (x: number) => TtfImported_NonZeroInt16;
|
|
95
94
|
/**
|
|
96
|
-
* Generates a random NonZeroInt16
|
|
95
|
+
* Generates a random `NonZeroInt16` within the given range.
|
|
96
|
+
*
|
|
97
|
+
* The range is inclusive on both ends.
|
|
97
98
|
*
|
|
98
|
-
* @
|
|
99
|
-
*
|
|
99
|
+
* @param min - The minimum value (inclusive)
|
|
100
|
+
* @param max - The maximum value (inclusive)
|
|
101
|
+
* @returns A random `NonZeroInt16` in `[min, max]`
|
|
100
102
|
*/
|
|
101
103
|
readonly random: (min?: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16> | undefined, max?: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16> | undefined) => TtfImported_NonZeroInt16;
|
|
102
104
|
/**
|
|
103
|
-
* Raises a
|
|
105
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `NonZeroInt16`
|
|
106
|
+
* (floored to an integer).
|
|
104
107
|
*
|
|
105
|
-
* @param a The base
|
|
106
|
-
* @param b The exponent
|
|
107
|
-
* @returns `a ** b`
|
|
108
|
+
* @param a - The base non-zero integer
|
|
109
|
+
* @param b - The exponent non-zero integer
|
|
110
|
+
* @returns `a ** b` as a `NonZeroInt16`
|
|
108
111
|
*/
|
|
109
112
|
readonly pow: (x: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>, y: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>) => TtfImported_NonZeroInt16;
|
|
110
113
|
/**
|
|
111
|
-
* Multiplies two NonZeroInt16
|
|
112
|
-
*
|
|
113
|
-
* The product of two non-zero integers is always non-zero, so this stays
|
|
114
|
-
* closed; for the non-closed operations (`add`/`sub`/`div`, whose result may
|
|
115
|
-
* be `0`) use {@link Num.add}/{@link Num.sub}/{@link Num.divInt}.
|
|
114
|
+
* Multiplies two non-zero integers, returning `a * b` as a `NonZeroInt16`.
|
|
116
115
|
*
|
|
117
|
-
* @param a The first
|
|
118
|
-
* @param b The second
|
|
119
|
-
* @returns `a
|
|
116
|
+
* @param a - The first non-zero integer
|
|
117
|
+
* @param b - The second non-zero integer
|
|
118
|
+
* @returns The product of `a` and `b` as a `NonZeroInt16`
|
|
120
119
|
*/
|
|
121
120
|
readonly mul: (x: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>, y: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt16>) => TtfImported_NonZeroInt16;
|
|
122
121
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"non-zero-int16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/non-zero-int16.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,IAAI,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAI9E,MAAM,MAAM,YAAY,GAAG,wBAAwB,CAAC;AA8BpD
|
|
1
|
+
{"version":3,"file":"non-zero-int16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/non-zero-int16.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,IAAI,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAI9E,MAAM,MAAM,YAAY,GAAG,wBAAwB,CAAC;AA8BpD;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,8CAAK,CAAC;AAEjC;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;MAAW,CAAC;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,YAAY;IACvB;;;;;;OAMG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;CAEK,CAAC"}
|
|
@@ -24,80 +24,77 @@ const isNonZeroInt16 = is;
|
|
|
24
24
|
const asNonZeroInt16 = castType;
|
|
25
25
|
const NonZeroInt16 = {
|
|
26
26
|
/**
|
|
27
|
-
* Type guard
|
|
27
|
+
* Type guard that checks if a value is a non-zero integer in [-2^15, 2^15).
|
|
28
28
|
*
|
|
29
|
-
* @param value The value to check
|
|
30
|
-
* @returns `true` if the value is a
|
|
31
|
-
*
|
|
29
|
+
* @param value - The value to check
|
|
30
|
+
* @returns `true` if the value is a non-zero integer in [-2^15, 2^15), `false` otherwise
|
|
31
|
+
* @see {@link isNonZeroInt16} for usage examples
|
|
32
32
|
*/
|
|
33
33
|
is,
|
|
34
34
|
/**
|
|
35
|
-
* The
|
|
36
|
-
*
|
|
37
|
-
* @readonly
|
|
35
|
+
* The smallest value representable as `NonZeroInt16`.
|
|
38
36
|
*/
|
|
39
37
|
MIN_VALUE,
|
|
40
38
|
/**
|
|
41
|
-
* The
|
|
42
|
-
*
|
|
43
|
-
* @readonly
|
|
39
|
+
* The largest value representable as `NonZeroInt16`.
|
|
44
40
|
*/
|
|
45
41
|
MAX_VALUE,
|
|
46
42
|
/**
|
|
47
|
-
* Returns the absolute value of a
|
|
43
|
+
* Returns the absolute value of a non-zero integer in [-2^15, 2^15).
|
|
44
|
+
*
|
|
45
|
+
* The result is non-negative and keeps the `NonZeroInt16` brand.
|
|
48
46
|
*
|
|
49
|
-
* @param a The
|
|
50
|
-
* @returns The absolute value as a NonZeroInt16
|
|
47
|
+
* @param a - The non-zero integer value
|
|
48
|
+
* @returns The absolute value as a non-negative `NonZeroInt16`
|
|
51
49
|
*/
|
|
52
50
|
abs,
|
|
53
51
|
/**
|
|
54
|
-
* Returns the
|
|
52
|
+
* Returns the smallest of the given non-zero integers.
|
|
55
53
|
*
|
|
56
|
-
* @param
|
|
57
|
-
* @
|
|
58
|
-
* @returns The minimum value as a NonZeroInt16.
|
|
54
|
+
* @param values - The non-zero integers to compare (at least one required)
|
|
55
|
+
* @returns The smallest value as a `NonZeroInt16`
|
|
59
56
|
*/
|
|
60
57
|
min: min_,
|
|
61
58
|
/**
|
|
62
|
-
* Returns the
|
|
59
|
+
* Returns the largest of the given non-zero integers.
|
|
63
60
|
*
|
|
64
|
-
* @param
|
|
65
|
-
* @
|
|
66
|
-
* @returns The maximum value as a NonZeroInt16.
|
|
61
|
+
* @param values - The non-zero integers to compare (at least one required)
|
|
62
|
+
* @returns The largest value as a `NonZeroInt16`
|
|
67
63
|
*/
|
|
68
64
|
max: max_,
|
|
69
65
|
/**
|
|
70
|
-
* Clamps a number
|
|
66
|
+
* Clamps a `number` into the `NonZeroInt16` range, rounding to the nearest
|
|
67
|
+
* integer and constraining the result to `[MIN_VALUE, MAX_VALUE]`.
|
|
71
68
|
*
|
|
72
|
-
* @param value The
|
|
73
|
-
* @returns The
|
|
69
|
+
* @param value - The value to clamp
|
|
70
|
+
* @returns The clamped value as a `NonZeroInt16`
|
|
74
71
|
*/
|
|
75
72
|
clamp,
|
|
76
73
|
/**
|
|
77
|
-
* Generates a random NonZeroInt16
|
|
74
|
+
* Generates a random `NonZeroInt16` within the given range.
|
|
78
75
|
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
76
|
+
* The range is inclusive on both ends.
|
|
77
|
+
*
|
|
78
|
+
* @param min - The minimum value (inclusive)
|
|
79
|
+
* @param max - The maximum value (inclusive)
|
|
80
|
+
* @returns A random `NonZeroInt16` in `[min, max]`
|
|
81
81
|
*/
|
|
82
82
|
random,
|
|
83
83
|
/**
|
|
84
|
-
* Raises a
|
|
84
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `NonZeroInt16`
|
|
85
|
+
* (floored to an integer).
|
|
85
86
|
*
|
|
86
|
-
* @param a The base
|
|
87
|
-
* @param b The exponent
|
|
88
|
-
* @returns `a ** b`
|
|
87
|
+
* @param a - The base non-zero integer
|
|
88
|
+
* @param b - The exponent non-zero integer
|
|
89
|
+
* @returns `a ** b` as a `NonZeroInt16`
|
|
89
90
|
*/
|
|
90
91
|
pow,
|
|
91
92
|
/**
|
|
92
|
-
* Multiplies two NonZeroInt16
|
|
93
|
-
*
|
|
94
|
-
* The product of two non-zero integers is always non-zero, so this stays
|
|
95
|
-
* closed; for the non-closed operations (`add`/`sub`/`div`, whose result may
|
|
96
|
-
* be `0`) use {@link Num.add}/{@link Num.sub}/{@link Num.divInt}.
|
|
93
|
+
* Multiplies two non-zero integers, returning `a * b` as a `NonZeroInt16`.
|
|
97
94
|
*
|
|
98
|
-
* @param a The first
|
|
99
|
-
* @param b The second
|
|
100
|
-
* @returns `a
|
|
95
|
+
* @param a - The first non-zero integer
|
|
96
|
+
* @param b - The second non-zero integer
|
|
97
|
+
* @returns The product of `a` and `b` as a `NonZeroInt16`
|
|
101
98
|
*/
|
|
102
99
|
mul
|
|
103
100
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"non-zero-int16.mjs","sources":["../../../src/number/branded-types/non-zero-int16.mts"],"sourcesContent":["import { type NonZeroInt16 as TtfImported_NonZeroInt16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type NonZeroInt16 = TtfImported_NonZeroInt16;\n\ntype ElementType = NonZeroInt16;\n\nconst typeNameInMessage = 'a non-zero integer in [-2^15, 2^15)';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n abs,\n castType,\n clamp,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n randomNonZero: random,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n number,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n nonZero: true,\n MIN_VALUE: -(2 ** 15),\n MAX_VALUE: 2 ** 15 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n *
|
|
1
|
+
{"version":3,"file":"non-zero-int16.mjs","sources":["../../../src/number/branded-types/non-zero-int16.mts"],"sourcesContent":["import { type NonZeroInt16 as TtfImported_NonZeroInt16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type NonZeroInt16 = TtfImported_NonZeroInt16;\n\ntype ElementType = NonZeroInt16;\n\nconst typeNameInMessage = 'a non-zero integer in [-2^15, 2^15)';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n abs,\n castType,\n clamp,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n randomNonZero: random,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n number,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n nonZero: true,\n MIN_VALUE: -(2 ** 15),\n MAX_VALUE: 2 ** 15 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Type guard that checks if a value is a non-zero integer in [-2^15, 2^15).\n *\n * Returns `true` for a non-zero integer in [-2^15, 2^15) — a value with no\n * fractional component.\n *\n * @param value - The value to check\n * @returns `true` if the value is a non-zero integer in [-2^15, 2^15), `false` otherwise\n */\nexport const isNonZeroInt16 = is;\n\n/**\n * Casts a `number` to the `NonZeroInt16` branded type.\n *\n * Validates that the value is a non-zero integer in [-2^15, 2^15) and returns\n * it with the `NonZeroInt16` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as a `NonZeroInt16`\n * @throws {TypeError} If the value is not a non-zero integer in [-2^15, 2^15)\n */\nexport const asNonZeroInt16 = castType;\n\n/**\n * Namespace providing type-safe operations for the `NonZeroInt16` branded type.\n *\n * The `NonZeroInt16` type represents a non-zero integer in [-2^15, 2^15).\n * Division (`div`) uses floor division.\n */\nexport const NonZeroInt16 = {\n /**\n * Type guard that checks if a value is a non-zero integer in [-2^15, 2^15).\n *\n * @param value - The value to check\n * @returns `true` if the value is a non-zero integer in [-2^15, 2^15), `false` otherwise\n * @see {@link isNonZeroInt16} for usage examples\n */\n is,\n\n /**\n * The smallest value representable as `NonZeroInt16`.\n */\n MIN_VALUE,\n\n /**\n * The largest value representable as `NonZeroInt16`.\n */\n MAX_VALUE,\n\n /**\n * Returns the absolute value of a non-zero integer in [-2^15, 2^15).\n *\n * The result is non-negative and keeps the `NonZeroInt16` brand.\n *\n * @param a - The non-zero integer value\n * @returns The absolute value as a non-negative `NonZeroInt16`\n */\n abs,\n\n /**\n * Returns the smallest of the given non-zero integers.\n *\n * @param values - The non-zero integers to compare (at least one required)\n * @returns The smallest value as a `NonZeroInt16`\n */\n min: min_,\n\n /**\n * Returns the largest of the given non-zero integers.\n *\n * @param values - The non-zero integers to compare (at least one required)\n * @returns The largest value as a `NonZeroInt16`\n */\n max: max_,\n\n /**\n * Clamps a `number` into the `NonZeroInt16` range, rounding to the nearest\n * integer and constraining the result to `[MIN_VALUE, MAX_VALUE]`.\n *\n * @param value - The value to clamp\n * @returns The clamped value as a `NonZeroInt16`\n */\n clamp,\n\n /**\n * Generates a random `NonZeroInt16` within the given range.\n *\n * The range is inclusive on both ends.\n *\n * @param min - The minimum value (inclusive)\n * @param max - The maximum value (inclusive)\n * @returns A random `NonZeroInt16` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as a `NonZeroInt16`\n * (floored to an integer).\n *\n * @param a - The base non-zero integer\n * @param b - The exponent non-zero integer\n * @returns `a ** b` as a `NonZeroInt16`\n */\n pow,\n\n /**\n * Multiplies two non-zero integers, returning `a * b` as a `NonZeroInt16`.\n *\n * @param a - The first non-zero integer\n * @param b - The second non-zero integer\n * @returns The product of `a` and `b` as a `NonZeroInt16`\n */\n mul,\n} as const;\n\nexpectType<\n keyof typeof NonZeroInt16,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'range',\n 'mul'\n >\n>('=');\n\nexpectType<\n typeof NonZeroInt16,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'range',\n 'mul'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,qCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,aAAA,EAAe;AACjB,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,OAAA,EAAS,IAAA;AAAA,EACT,SAAA,EAAW,MAAO;AAAA,EAClB,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AAWH,MAAM,cAAA,GAAiB;AAYvB,MAAM,cAAA,GAAiB;AAQvB,MAAM,YAAA,GAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ1B,EAAA;AAAA;AAAA;AAAA;AAAA,EAKA,SAAA;AAAA;AAAA;AAAA;AAAA,EAKA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASL,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA;AACF;;;;"}
|
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import { type NonZeroInt32 as TtfImported_NonZeroInt32 } from 'ts-type-forge';
|
|
2
2
|
export type NonZeroInt32 = TtfImported_NonZeroInt32;
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
* range [-2^31, 2^31) excluding 0).
|
|
4
|
+
* Type guard that checks if a value is a non-zero integer in [-2^31, 2^31).
|
|
6
5
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* Returns `true` for a non-zero integer in [-2^31, 2^31) — a value with no
|
|
7
|
+
* fractional component.
|
|
8
|
+
*
|
|
9
|
+
* @param value - The value to check
|
|
10
|
+
* @returns `true` if the value is a non-zero integer in [-2^31, 2^31), `false` otherwise
|
|
9
11
|
*/
|
|
10
12
|
export declare const isNonZeroInt32: (a: number) => a is TtfImported_NonZeroInt32;
|
|
11
13
|
/**
|
|
12
|
-
* Casts a number to
|
|
14
|
+
* Casts a `number` to the `NonZeroInt32` branded type.
|
|
15
|
+
*
|
|
16
|
+
* Validates that the value is a non-zero integer in [-2^31, 2^31) and returns
|
|
17
|
+
* it with the `NonZeroInt32` brand. Throws a `TypeError` otherwise.
|
|
13
18
|
*
|
|
14
|
-
* @param value The value to cast
|
|
15
|
-
* @returns The value as a NonZeroInt32
|
|
16
|
-
* @throws {TypeError} If the value is not a non-zero integer in [-2^31, 2^31)
|
|
19
|
+
* @param value - The value to cast
|
|
20
|
+
* @returns The value as a `NonZeroInt32`
|
|
21
|
+
* @throws {TypeError} If the value is not a non-zero integer in [-2^31, 2^31)
|
|
17
22
|
*/
|
|
18
23
|
export declare const asNonZeroInt32: <N extends number>(x: N) => number & {
|
|
19
24
|
readonly "!=0": true;
|
|
@@ -29,91 +34,84 @@ export declare const asNonZeroInt32: <N extends number>(x: N) => number & {
|
|
|
29
34
|
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
30
35
|
}> & N;
|
|
31
36
|
/**
|
|
32
|
-
* Namespace providing type-safe
|
|
33
|
-
* signed integers.
|
|
37
|
+
* Namespace providing type-safe operations for the `NonZeroInt32` branded type.
|
|
34
38
|
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* maintains the 32-bit non-zero signed integer constraint, preventing zero
|
|
38
|
-
* results and overflow.
|
|
39
|
+
* The `NonZeroInt32` type represents a non-zero integer in [-2^31, 2^31).
|
|
40
|
+
* Division (`div`) uses floor division.
|
|
39
41
|
*/
|
|
40
42
|
export declare const NonZeroInt32: {
|
|
41
43
|
/**
|
|
42
|
-
* Type guard
|
|
44
|
+
* Type guard that checks if a value is a non-zero integer in [-2^31, 2^31).
|
|
43
45
|
*
|
|
44
|
-
* @param value The value to check
|
|
45
|
-
* @returns `true` if the value is a
|
|
46
|
-
*
|
|
46
|
+
* @param value - The value to check
|
|
47
|
+
* @returns `true` if the value is a non-zero integer in [-2^31, 2^31), `false` otherwise
|
|
48
|
+
* @see {@link isNonZeroInt32} for usage examples
|
|
47
49
|
*/
|
|
48
50
|
readonly is: (a: number) => a is TtfImported_NonZeroInt32;
|
|
49
51
|
/**
|
|
50
|
-
* The
|
|
51
|
-
*
|
|
52
|
-
* @readonly
|
|
52
|
+
* The smallest value representable as `NonZeroInt32`.
|
|
53
53
|
*/
|
|
54
54
|
readonly MIN_VALUE: number;
|
|
55
55
|
/**
|
|
56
|
-
* The
|
|
57
|
-
*
|
|
58
|
-
* @readonly
|
|
56
|
+
* The largest value representable as `NonZeroInt32`.
|
|
59
57
|
*/
|
|
60
58
|
readonly MAX_VALUE: number;
|
|
61
59
|
/**
|
|
62
|
-
* Returns the absolute value of a
|
|
60
|
+
* Returns the absolute value of a non-zero integer in [-2^31, 2^31).
|
|
63
61
|
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
62
|
+
* The result is non-negative and keeps the `NonZeroInt32` brand.
|
|
63
|
+
*
|
|
64
|
+
* @param a - The non-zero integer value
|
|
65
|
+
* @returns The absolute value as a non-negative `NonZeroInt32`
|
|
66
66
|
*/
|
|
67
67
|
readonly abs: (x: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>) => import("ts-type-forge").IntersectBrand<TtfImported_NonZeroInt32, import("ts-type-forge").PositiveNumber>;
|
|
68
68
|
/**
|
|
69
|
-
* Returns the
|
|
69
|
+
* Returns the smallest of the given non-zero integers.
|
|
70
70
|
*
|
|
71
|
-
* @param
|
|
72
|
-
* @
|
|
73
|
-
* @returns The minimum value as a NonZeroInt32.
|
|
71
|
+
* @param values - The non-zero integers to compare (at least one required)
|
|
72
|
+
* @returns The smallest value as a `NonZeroInt32`
|
|
74
73
|
*/
|
|
75
74
|
readonly min: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>[]) => TtfImported_NonZeroInt32;
|
|
76
75
|
/**
|
|
77
|
-
* Returns the
|
|
76
|
+
* Returns the largest of the given non-zero integers.
|
|
78
77
|
*
|
|
79
|
-
* @param
|
|
80
|
-
* @
|
|
81
|
-
* @returns The maximum value as a NonZeroInt32.
|
|
78
|
+
* @param values - The non-zero integers to compare (at least one required)
|
|
79
|
+
* @returns The largest value as a `NonZeroInt32`
|
|
82
80
|
*/
|
|
83
81
|
readonly max: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>[]) => TtfImported_NonZeroInt32;
|
|
84
82
|
/**
|
|
85
|
-
* Clamps a number
|
|
83
|
+
* Clamps a `number` into the `NonZeroInt32` range, rounding to the nearest
|
|
84
|
+
* integer and constraining the result to `[MIN_VALUE, MAX_VALUE]`.
|
|
86
85
|
*
|
|
87
|
-
* @param value The
|
|
88
|
-
* @returns The
|
|
89
|
-
* NonZeroInt32.
|
|
86
|
+
* @param value - The value to clamp
|
|
87
|
+
* @returns The clamped value as a `NonZeroInt32`
|
|
90
88
|
*/
|
|
91
89
|
readonly clamp: (x: number) => TtfImported_NonZeroInt32;
|
|
92
90
|
/**
|
|
93
|
-
* Generates a random NonZeroInt32
|
|
91
|
+
* Generates a random `NonZeroInt32` within the given range.
|
|
92
|
+
*
|
|
93
|
+
* The range is inclusive on both ends.
|
|
94
94
|
*
|
|
95
|
-
* @
|
|
96
|
-
*
|
|
95
|
+
* @param min - The minimum value (inclusive)
|
|
96
|
+
* @param max - The maximum value (inclusive)
|
|
97
|
+
* @returns A random `NonZeroInt32` in `[min, max]`
|
|
97
98
|
*/
|
|
98
99
|
readonly random: (min?: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32> | undefined, max?: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32> | undefined) => TtfImported_NonZeroInt32;
|
|
99
100
|
/**
|
|
100
|
-
* Raises a
|
|
101
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `NonZeroInt32`
|
|
102
|
+
* (floored to an integer).
|
|
101
103
|
*
|
|
102
|
-
* @param a The base
|
|
103
|
-
* @param b The exponent
|
|
104
|
-
* @returns `a ** b`
|
|
104
|
+
* @param a - The base non-zero integer
|
|
105
|
+
* @param b - The exponent non-zero integer
|
|
106
|
+
* @returns `a ** b` as a `NonZeroInt32`
|
|
105
107
|
*/
|
|
106
108
|
readonly pow: (x: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>, y: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>) => TtfImported_NonZeroInt32;
|
|
107
109
|
/**
|
|
108
|
-
* Multiplies two NonZeroInt32
|
|
109
|
-
*
|
|
110
|
-
* The product of two non-zero integers is always non-zero, so this stays
|
|
111
|
-
* closed; for the non-closed operations (`add`/`sub`/`div`, whose result may
|
|
112
|
-
* be `0`) use {@link Num.add}/{@link Num.sub}/{@link Num.divInt}.
|
|
110
|
+
* Multiplies two non-zero integers, returning `a * b` as a `NonZeroInt32`.
|
|
113
111
|
*
|
|
114
|
-
* @param a The first
|
|
115
|
-
* @param b The second
|
|
116
|
-
* @returns `a
|
|
112
|
+
* @param a - The first non-zero integer
|
|
113
|
+
* @param b - The second non-zero integer
|
|
114
|
+
* @returns The product of `a` and `b` as a `NonZeroInt32`
|
|
117
115
|
*/
|
|
118
116
|
readonly mul: (x: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>, y: import("ts-type-forge").WithSmallInt<TtfImported_NonZeroInt32>) => TtfImported_NonZeroInt32;
|
|
119
117
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"non-zero-int32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/non-zero-int32.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,IAAI,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAI9E,MAAM,MAAM,YAAY,GAAG,wBAAwB,CAAC;AA8BpD
|
|
1
|
+
{"version":3,"file":"non-zero-int32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/non-zero-int32.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,IAAI,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAI9E,MAAM,MAAM,YAAY,GAAG,wBAAwB,CAAC;AA8BpD;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,8CAAK,CAAC;AAEjC;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;MAAW,CAAC;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,YAAY;IACvB;;;;;;OAMG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;CAEK,CAAC"}
|