Effect.Effect<number, never, never>Generates a random number between 0 (inclusive) and 1 (exclusive).
When to use
Use to generate a pseudo-random floating-point number in the standard
[0, 1) range.
Example (Generating a random number)
import { Effect, Random } from "effect"
const program = Effect.gen(function*() {
const randomDouble = yield* Random.next
console.log("Random double:", randomDouble)
})Random Number Generators
Source effect/Random.ts:831 lines
export const const next: Effect.Effect<number>const next: {
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 number between 0 (inclusive) and 1 (exclusive).
When to use
Use to generate a pseudo-random floating-point number in the standard
[0, 1) range.
Example (Generating a random number)
import { Effect, Random } from "effect"
const program = Effect.gen(function*() {
const randomDouble = yield* Random.next
console.log("Random double:", randomDouble)
})
next: 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.nextDoubleUnsafe())Referenced by 1 symbols