t3-code-android-nightly/.repos/effect-smol/packages/tools/bundle/fixtures/arbitrary-combinators.ts
Julius Marminge 6f9cea00ae
chore(refs): sync Effect and Alchemy references to 4.0.1 and beta.80 (#16170)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 13:22:30 -07:00

12 lines
547 B
TypeScript

import * as Arbitrary from "effect/Arbitrary"
import * as Result from "effect/Result"
import * as Schema from "effect/Schema"
const integers = Arbitrary.schema(Schema.Int)
export const arbitrary = Arbitrary.all([
integers.pipe(Arbitrary.map((value) => value + 1)),
integers.pipe(Arbitrary.flatMap((left) => integers.pipe(Arbitrary.map((right) => [left, right] as const)))),
integers.pipe(Arbitrary.filter((value) => value >= 0)),
integers.pipe(Arbitrary.filterMap((value) => value === 0 ? Result.fail(value) : Result.succeed(value)))
])