Effect.Effect<number, never, never>Generates a random integer between Number.MIN_SAFE_INTEGER (inclusive)
and Number.MAX_SAFE_INTEGER (inclusive).
When to use
Use to generate a pseudo-random safe integer across the full safe-integer range.
Example (Generating a random integer)
import { Effect, Random } from "effect"
const program = Effect.gen(function*() {
const randomInt = yield* Random.nextInt
console.log("Random integer:", randomInt)
})Random Number Generators
Source effect/Random.ts:1311 lines
export const const nextInt: Effect.Effect<number>const nextInt: {
pipe: { <A>(this: A): A; <A, B = never>(this: A, ab: (_: A) => B): B; <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C; <A, B = never, C = never, D = never>(this: A, ab: (_: A) => B, bc: (_: B) => C, cd: (_: C) => D): D; <…;
toString: () => string;
toJSON: () => unknown;
}
Generates a random integer between Number.MIN_SAFE_INTEGER (inclusive)
and Number.MAX_SAFE_INTEGER (inclusive).
When to use
Use to generate a pseudo-random safe integer across the full safe-integer
range.
Example (Generating a random integer)
import { Effect, Random } from "effect"
const program = Effect.gen(function*() {
const randomInt = yield* Random.nextInt
console.log("Random integer:", randomInt)
})
nextInt: import EffectEffect.type Effect.Effect = /*unresolved*/ anyEffect<number> = const randomWith: <A>(
f: (random: (typeof Random)["Service"]) => A
) => Effect.Effect<A>
randomWith((r: Context.Reference<{
nextIntUnsafe(): number
nextDoubleUnsafe(): number
}>
(parameter) r: {
nextIntUnsafe: () => number;
nextDoubleUnsafe: () => number;
}
r) => r: Context.Reference<{
nextIntUnsafe(): number
nextDoubleUnsafe(): number
}>
(parameter) r: {
nextIntUnsafe: () => number;
nextDoubleUnsafe: () => number;
}
r.nextIntUnsafe())