effect 3.10.18 → 3.11.0
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/cjs/Array.js +206 -0
- package/dist/cjs/Array.js.map +1 -1
- package/dist/cjs/BigDecimal.js +181 -24
- package/dist/cjs/BigDecimal.js.map +1 -1
- package/dist/cjs/BigInt.js +54 -0
- package/dist/cjs/BigInt.js.map +1 -1
- package/dist/cjs/Boolean.js +24 -0
- package/dist/cjs/Boolean.js.map +1 -1
- package/dist/cjs/Brand.js +4 -0
- package/dist/cjs/Brand.js.map +1 -1
- package/dist/cjs/Channel.js +44 -4
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Chunk.js +8 -0
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/Config.js +10 -1
- package/dist/cjs/Config.js.map +1 -1
- package/dist/cjs/Context.js +50 -1
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Cron.js +81 -67
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/Data.js +14 -0
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/DateTime.js +178 -664
- package/dist/cjs/DateTime.js.map +1 -1
- package/dist/cjs/Duration.js +2 -0
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +296 -4
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +38 -2
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/FiberHandle.js +6 -0
- package/dist/cjs/FiberHandle.js.map +1 -1
- package/dist/cjs/FiberMap.js +6 -0
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberSet.js +6 -0
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/Function.js +34 -0
- package/dist/cjs/Function.js.map +1 -1
- package/dist/cjs/GlobalValue.js +2 -0
- package/dist/cjs/GlobalValue.js.map +1 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/Inspectable.js +8 -4
- package/dist/cjs/Inspectable.js.map +1 -1
- package/dist/cjs/Iterable.js +18 -0
- package/dist/cjs/Iterable.js.map +1 -1
- package/dist/cjs/JSONSchema.js.map +1 -1
- package/dist/cjs/List.js +4 -0
- package/dist/cjs/List.js.map +1 -1
- package/dist/cjs/Logger.js +26 -0
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/Mailbox.js +2 -0
- package/dist/cjs/Mailbox.js.map +1 -1
- package/dist/cjs/ManagedRuntime.js +2 -0
- package/dist/cjs/ManagedRuntime.js.map +1 -1
- package/dist/cjs/Metric.js +10 -0
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/Micro.js +1104 -1069
- package/dist/cjs/Micro.js.map +1 -1
- package/dist/cjs/Number.js +44 -0
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/Option.js +70 -0
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Order.js +2 -0
- package/dist/cjs/Order.js.map +1 -1
- package/dist/cjs/Ordering.js +4 -0
- package/dist/cjs/Ordering.js.map +1 -1
- package/dist/cjs/Predicate.js +68 -0
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/Random.js +4 -0
- package/dist/cjs/Random.js.map +1 -1
- package/dist/cjs/RateLimiter.js +4 -0
- package/dist/cjs/RateLimiter.js.map +1 -1
- package/dist/cjs/RcMap.js +2 -0
- package/dist/cjs/RcMap.js.map +1 -1
- package/dist/cjs/RcRef.js +2 -0
- package/dist/cjs/RcRef.js.map +1 -1
- package/dist/cjs/Record.js +56 -0
- package/dist/cjs/Record.js.map +1 -1
- package/dist/cjs/Redacted.js +8 -0
- package/dist/cjs/Redacted.js.map +1 -1
- package/dist/cjs/RegExp.js +4 -0
- package/dist/cjs/RegExp.js.map +1 -1
- package/dist/cjs/Request.js +4 -0
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/RequestResolver.js +2 -0
- package/dist/cjs/RequestResolver.js.map +1 -1
- package/dist/cjs/Runtime.js +6 -0
- package/dist/cjs/Runtime.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schema.js +91 -8
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/Sink.js +9 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Stream.js +179 -7
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/String.js +62 -0
- package/dist/cjs/String.js.map +1 -1
- package/dist/cjs/Struct.js +12 -0
- package/dist/cjs/Struct.js.map +1 -1
- package/dist/cjs/Symbol.js +2 -0
- package/dist/cjs/Symbol.js.map +1 -1
- package/dist/cjs/Trie.js +56 -0
- package/dist/cjs/Trie.js.map +1 -1
- package/dist/cjs/Tuple.js +18 -0
- package/dist/cjs/Tuple.js.map +1 -1
- package/dist/cjs/Utils.js +7 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js +5 -9
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel.js +156 -130
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/config.js +13 -4
- package/dist/cjs/internal/config.js.map +1 -1
- package/dist/cjs/internal/context.js +46 -3
- package/dist/cjs/internal/context.js.map +1 -1
- package/dist/cjs/internal/dateTime.js +747 -0
- package/dist/cjs/internal/dateTime.js.map +1 -0
- package/dist/cjs/internal/fiberRuntime.js +34 -11
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js +9 -3
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/layer.js +1 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/mailbox.js +1 -1
- package/dist/cjs/internal/mailbox.js.map +1 -1
- package/dist/cjs/internal/sink.js +25 -21
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stream.js +70 -71
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/cjs/internal/version.js.map +1 -1
- package/dist/dts/Array.d.ts +534 -0
- package/dist/dts/Array.d.ts.map +1 -1
- package/dist/dts/BigDecimal.d.ts +172 -1
- package/dist/dts/BigDecimal.d.ts.map +1 -1
- package/dist/dts/BigInt.d.ts +114 -0
- package/dist/dts/BigInt.d.ts.map +1 -1
- package/dist/dts/Boolean.d.ts +56 -0
- package/dist/dts/Boolean.d.ts.map +1 -1
- package/dist/dts/Brand.d.ts +6 -0
- package/dist/dts/Brand.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +66 -5
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +30 -0
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +25 -1
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +155 -0
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +21 -6
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +26 -0
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/DateTime.d.ts +192 -49
- package/dist/dts/DateTime.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +2 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +658 -1
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +84 -2
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +6 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +6 -0
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +6 -0
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/Function.d.ts +50 -0
- package/dist/dts/Function.d.ts.map +1 -1
- package/dist/dts/GlobalValue.d.ts +2 -0
- package/dist/dts/GlobalValue.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +6 -0
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/Iterable.d.ts +26 -0
- package/dist/dts/Iterable.d.ts.map +1 -1
- package/dist/dts/JSONSchema.d.ts +1 -0
- package/dist/dts/JSONSchema.d.ts.map +1 -1
- package/dist/dts/List.d.ts +20 -0
- package/dist/dts/List.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +34 -0
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/Mailbox.d.ts +2 -0
- package/dist/dts/Mailbox.d.ts.map +1 -1
- package/dist/dts/ManagedRuntime.d.ts +2 -0
- package/dist/dts/ManagedRuntime.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +18 -0
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/Micro.d.ts +880 -863
- package/dist/dts/Micro.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +104 -0
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +142 -0
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts +2 -0
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Ordering.d.ts +8 -0
- package/dist/dts/Ordering.d.ts.map +1 -1
- package/dist/dts/Predicate.d.ts +104 -0
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +4 -0
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/RateLimiter.d.ts +4 -0
- package/dist/dts/RateLimiter.d.ts.map +1 -1
- package/dist/dts/RcMap.d.ts +6 -0
- package/dist/dts/RcMap.d.ts.map +1 -1
- package/dist/dts/RcRef.d.ts +2 -0
- package/dist/dts/RcRef.d.ts.map +1 -1
- package/dist/dts/Record.d.ts +136 -0
- package/dist/dts/Record.d.ts.map +1 -1
- package/dist/dts/Redacted.d.ts +8 -0
- package/dist/dts/Redacted.d.ts.map +1 -1
- package/dist/dts/RegExp.d.ts +4 -0
- package/dist/dts/RegExp.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +4 -0
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +6 -0
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +18 -0
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +2 -0
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +90 -0
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +8 -0
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +394 -32
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/String.d.ts +94 -0
- package/dist/dts/String.d.ts.map +1 -1
- package/dist/dts/Struct.d.ts +24 -0
- package/dist/dts/Struct.d.ts.map +1 -1
- package/dist/dts/Symbol.d.ts +2 -0
- package/dist/dts/Symbol.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +132 -0
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/dts/Tuple.d.ts +42 -0
- package/dist/dts/Tuple.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +24 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/Utils.d.ts +4 -0
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/internal/context.d.ts +1 -1
- package/dist/dts/internal/context.d.ts.map +1 -1
- package/dist/dts/internal/dateTime.d.ts +2 -0
- package/dist/dts/internal/dateTime.d.ts.map +1 -0
- package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Array.js +208 -0
- package/dist/esm/Array.js.map +1 -1
- package/dist/esm/BigDecimal.js +175 -20
- package/dist/esm/BigDecimal.js.map +1 -1
- package/dist/esm/BigInt.js +54 -0
- package/dist/esm/BigInt.js.map +1 -1
- package/dist/esm/Boolean.js +24 -0
- package/dist/esm/Boolean.js.map +1 -1
- package/dist/esm/Brand.js +4 -0
- package/dist/esm/Brand.js.map +1 -1
- package/dist/esm/Channel.js +42 -2
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Chunk.js +8 -0
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/Config.js +9 -0
- package/dist/esm/Config.js.map +1 -1
- package/dist/esm/Context.js +49 -0
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Cron.js +81 -67
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/Data.js +16 -0
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/DateTime.js +176 -627
- package/dist/esm/DateTime.js.map +1 -1
- package/dist/esm/Duration.js +2 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +297 -0
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +40 -2
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/FiberHandle.js +6 -0
- package/dist/esm/FiberHandle.js.map +1 -1
- package/dist/esm/FiberMap.js +6 -0
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberSet.js +6 -0
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/Function.js +34 -0
- package/dist/esm/Function.js.map +1 -1
- package/dist/esm/GlobalValue.js +2 -0
- package/dist/esm/GlobalValue.js.map +1 -1
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/Inspectable.js +8 -4
- package/dist/esm/Inspectable.js.map +1 -1
- package/dist/esm/Iterable.js +18 -0
- package/dist/esm/Iterable.js.map +1 -1
- package/dist/esm/JSONSchema.js.map +1 -1
- package/dist/esm/List.js +4 -0
- package/dist/esm/List.js.map +1 -1
- package/dist/esm/Logger.js +26 -0
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/Mailbox.js +2 -0
- package/dist/esm/Mailbox.js.map +1 -1
- package/dist/esm/ManagedRuntime.js +2 -0
- package/dist/esm/ManagedRuntime.js.map +1 -1
- package/dist/esm/Metric.js +10 -0
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/Micro.js +1077 -1037
- package/dist/esm/Micro.js.map +1 -1
- package/dist/esm/Number.js +44 -0
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/Option.js +72 -0
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Order.js +2 -0
- package/dist/esm/Order.js.map +1 -1
- package/dist/esm/Ordering.js +4 -0
- package/dist/esm/Ordering.js.map +1 -1
- package/dist/esm/Predicate.js +68 -0
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/Random.js +4 -0
- package/dist/esm/Random.js.map +1 -1
- package/dist/esm/RateLimiter.js +4 -0
- package/dist/esm/RateLimiter.js.map +1 -1
- package/dist/esm/RcMap.js +2 -0
- package/dist/esm/RcMap.js.map +1 -1
- package/dist/esm/RcRef.js +2 -0
- package/dist/esm/RcRef.js.map +1 -1
- package/dist/esm/Record.js +56 -0
- package/dist/esm/Record.js.map +1 -1
- package/dist/esm/Redacted.js +8 -0
- package/dist/esm/Redacted.js.map +1 -1
- package/dist/esm/RegExp.js +4 -0
- package/dist/esm/RegExp.js.map +1 -1
- package/dist/esm/Request.js +4 -0
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/RequestResolver.js +2 -0
- package/dist/esm/RequestResolver.js.map +1 -1
- package/dist/esm/Runtime.js +6 -0
- package/dist/esm/Runtime.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schema.js +88 -0
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/Sink.js +8 -0
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Stream.js +183 -5
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/String.js +62 -0
- package/dist/esm/String.js.map +1 -1
- package/dist/esm/Struct.js +12 -0
- package/dist/esm/Struct.js.map +1 -1
- package/dist/esm/Symbol.js +2 -0
- package/dist/esm/Symbol.js.map +1 -1
- package/dist/esm/Trie.js +56 -0
- package/dist/esm/Trie.js.map +1 -1
- package/dist/esm/Tuple.js +22 -0
- package/dist/esm/Tuple.js.map +1 -1
- package/dist/esm/Utils.js +5 -0
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js +5 -7
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel.js +152 -129
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/config.js +11 -3
- package/dist/esm/internal/config.js.map +1 -1
- package/dist/esm/internal/context.js +42 -2
- package/dist/esm/internal/context.js.map +1 -1
- package/dist/esm/internal/dateTime.js +704 -0
- package/dist/esm/internal/dateTime.js.map +1 -0
- package/dist/esm/internal/fiberRuntime.js +31 -9
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js +9 -3
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/layer.js +1 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/mailbox.js +1 -1
- package/dist/esm/internal/mailbox.js.map +1 -1
- package/dist/esm/internal/sink.js +23 -20
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stream.js +66 -69
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +1 -1
- package/src/Array.ts +534 -0
- package/src/BigDecimal.ts +247 -21
- package/src/BigInt.ts +114 -0
- package/src/Boolean.ts +56 -0
- package/src/Brand.ts +6 -0
- package/src/Channel.ts +81 -5
- package/src/Chunk.ts +32 -0
- package/src/Config.ts +26 -1
- package/src/Context.ts +163 -0
- package/src/Cron.ts +91 -68
- package/src/Data.ts +26 -0
- package/src/DateTime.ts +307 -757
- package/src/Duration.ts +2 -0
- package/src/Effect.ts +910 -1
- package/src/Either.ts +84 -2
- package/src/FiberHandle.ts +6 -0
- package/src/FiberMap.ts +6 -0
- package/src/FiberSet.ts +6 -0
- package/src/Function.ts +50 -0
- package/src/GlobalValue.ts +2 -0
- package/src/HashMap.ts +6 -0
- package/src/Inspectable.ts +11 -7
- package/src/Iterable.ts +26 -0
- package/src/JSONSchema.ts +1 -0
- package/src/List.ts +24 -0
- package/src/Logger.ts +34 -0
- package/src/Mailbox.ts +2 -0
- package/src/ManagedRuntime.ts +2 -0
- package/src/Metric.ts +18 -0
- package/src/Micro.ts +2007 -1745
- package/src/Number.ts +104 -0
- package/src/Option.ts +142 -0
- package/src/Order.ts +2 -0
- package/src/Ordering.ts +8 -0
- package/src/Predicate.ts +104 -0
- package/src/Random.ts +4 -0
- package/src/RateLimiter.ts +4 -0
- package/src/RcMap.ts +6 -0
- package/src/RcRef.ts +2 -0
- package/src/Record.ts +136 -0
- package/src/Redacted.ts +8 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +4 -0
- package/src/RequestResolver.ts +6 -0
- package/src/Runtime.ts +18 -0
- package/src/STM.ts +2 -0
- package/src/Schema.ts +124 -0
- package/src/Sink.ts +11 -0
- package/src/Stream.ts +399 -44
- package/src/String.ts +94 -0
- package/src/Struct.ts +24 -0
- package/src/Symbol.ts +2 -0
- package/src/Trie.ts +132 -0
- package/src/Tuple.ts +42 -0
- package/src/Types.ts +24 -0
- package/src/Utils.ts +8 -0
- package/src/internal/channel/channelExecutor.ts +37 -33
- package/src/internal/channel.ts +504 -467
- package/src/internal/config.ts +18 -6
- package/src/internal/context.ts +56 -4
- package/src/internal/dateTime.ts +1126 -0
- package/src/internal/fiberRuntime.ts +35 -16
- package/src/internal/groupBy.ts +13 -22
- package/src/internal/layer.ts +5 -8
- package/src/internal/mailbox.ts +6 -4
- package/src/internal/sink.ts +55 -35
- package/src/internal/stream.ts +299 -299
- package/src/internal/version.ts +1 -1
package/src/BigInt.ts
CHANGED
|
@@ -23,10 +23,12 @@ const bigint2 = BigInt(2)
|
|
|
23
23
|
* @param input - The value to test.
|
|
24
24
|
*
|
|
25
25
|
* @example
|
|
26
|
+
* ```ts
|
|
26
27
|
* import { isBigInt } from "effect/BigInt"
|
|
27
28
|
*
|
|
28
29
|
* assert.deepStrictEqual(isBigInt(1n), true)
|
|
29
30
|
* assert.deepStrictEqual(isBigInt(1), false)
|
|
31
|
+
* ```
|
|
30
32
|
*
|
|
31
33
|
* @category guards
|
|
32
34
|
* @since 2.0.0
|
|
@@ -40,9 +42,11 @@ export const isBigInt: (u: unknown) => u is bigint = predicate.isBigInt
|
|
|
40
42
|
* @param that - The second operand.
|
|
41
43
|
*
|
|
42
44
|
* @example
|
|
45
|
+
* ```ts
|
|
43
46
|
* import { sum } from "effect/BigInt"
|
|
44
47
|
*
|
|
45
48
|
* assert.deepStrictEqual(sum(2n, 3n), 5n)
|
|
49
|
+
* ```
|
|
46
50
|
*
|
|
47
51
|
* @category math
|
|
48
52
|
* @since 2.0.0
|
|
@@ -55,9 +59,11 @@ export const sum: {
|
|
|
55
59
|
* @param that - The second operand.
|
|
56
60
|
*
|
|
57
61
|
* @example
|
|
62
|
+
* ```ts
|
|
58
63
|
* import { sum } from "effect/BigInt"
|
|
59
64
|
*
|
|
60
65
|
* assert.deepStrictEqual(sum(2n, 3n), 5n)
|
|
66
|
+
* ```
|
|
61
67
|
*
|
|
62
68
|
* @category math
|
|
63
69
|
* @since 2.0.0
|
|
@@ -70,9 +76,11 @@ export const sum: {
|
|
|
70
76
|
* @param that - The second operand.
|
|
71
77
|
*
|
|
72
78
|
* @example
|
|
79
|
+
* ```ts
|
|
73
80
|
* import { sum } from "effect/BigInt"
|
|
74
81
|
*
|
|
75
82
|
* assert.deepStrictEqual(sum(2n, 3n), 5n)
|
|
83
|
+
* ```
|
|
76
84
|
*
|
|
77
85
|
* @category math
|
|
78
86
|
* @since 2.0.0
|
|
@@ -87,9 +95,11 @@ export const sum: {
|
|
|
87
95
|
* @param that - The second operand.
|
|
88
96
|
*
|
|
89
97
|
* @example
|
|
98
|
+
* ```ts
|
|
90
99
|
* import { multiply } from "effect/BigInt"
|
|
91
100
|
*
|
|
92
101
|
* assert.deepStrictEqual(multiply(2n, 3n), 6n)
|
|
102
|
+
* ```
|
|
93
103
|
*
|
|
94
104
|
* @category math
|
|
95
105
|
* @since 2.0.0
|
|
@@ -102,9 +112,11 @@ export const multiply: {
|
|
|
102
112
|
* @param that - The second operand.
|
|
103
113
|
*
|
|
104
114
|
* @example
|
|
115
|
+
* ```ts
|
|
105
116
|
* import { multiply } from "effect/BigInt"
|
|
106
117
|
*
|
|
107
118
|
* assert.deepStrictEqual(multiply(2n, 3n), 6n)
|
|
119
|
+
* ```
|
|
108
120
|
*
|
|
109
121
|
* @category math
|
|
110
122
|
* @since 2.0.0
|
|
@@ -117,9 +129,11 @@ export const multiply: {
|
|
|
117
129
|
* @param that - The second operand.
|
|
118
130
|
*
|
|
119
131
|
* @example
|
|
132
|
+
* ```ts
|
|
120
133
|
* import { multiply } from "effect/BigInt"
|
|
121
134
|
*
|
|
122
135
|
* assert.deepStrictEqual(multiply(2n, 3n), 6n)
|
|
136
|
+
* ```
|
|
123
137
|
*
|
|
124
138
|
* @category math
|
|
125
139
|
* @since 2.0.0
|
|
@@ -134,9 +148,11 @@ export const multiply: {
|
|
|
134
148
|
* @param that - The second operand.
|
|
135
149
|
*
|
|
136
150
|
* @example
|
|
151
|
+
* ```ts
|
|
137
152
|
* import { subtract } from "effect/BigInt"
|
|
138
153
|
*
|
|
139
154
|
* assert.deepStrictEqual(subtract(2n, 3n), -1n)
|
|
155
|
+
* ```
|
|
140
156
|
*
|
|
141
157
|
* @category math
|
|
142
158
|
* @since 2.0.0
|
|
@@ -149,9 +165,11 @@ export const subtract: {
|
|
|
149
165
|
* @param that - The second operand.
|
|
150
166
|
*
|
|
151
167
|
* @example
|
|
168
|
+
* ```ts
|
|
152
169
|
* import { subtract } from "effect/BigInt"
|
|
153
170
|
*
|
|
154
171
|
* assert.deepStrictEqual(subtract(2n, 3n), -1n)
|
|
172
|
+
* ```
|
|
155
173
|
*
|
|
156
174
|
* @category math
|
|
157
175
|
* @since 2.0.0
|
|
@@ -164,9 +182,11 @@ export const subtract: {
|
|
|
164
182
|
* @param that - The second operand.
|
|
165
183
|
*
|
|
166
184
|
* @example
|
|
185
|
+
* ```ts
|
|
167
186
|
* import { subtract } from "effect/BigInt"
|
|
168
187
|
*
|
|
169
188
|
* assert.deepStrictEqual(subtract(2n, 3n), -1n)
|
|
189
|
+
* ```
|
|
170
190
|
*
|
|
171
191
|
* @category math
|
|
172
192
|
* @since 2.0.0
|
|
@@ -186,10 +206,12 @@ export const subtract: {
|
|
|
186
206
|
* @param that - The divisor operand.
|
|
187
207
|
*
|
|
188
208
|
* @example
|
|
209
|
+
* ```ts
|
|
189
210
|
* import { BigInt, Option } from "effect"
|
|
190
211
|
*
|
|
191
212
|
* assert.deepStrictEqual(BigInt.divide(6n, 3n), Option.some(2n))
|
|
192
213
|
* assert.deepStrictEqual(BigInt.divide(6n, 0n), Option.none())
|
|
214
|
+
* ```
|
|
193
215
|
*
|
|
194
216
|
* @category math
|
|
195
217
|
* @since 2.0.0
|
|
@@ -207,10 +229,12 @@ export const divide: {
|
|
|
207
229
|
* @param that - The divisor operand.
|
|
208
230
|
*
|
|
209
231
|
* @example
|
|
232
|
+
* ```ts
|
|
210
233
|
* import { BigInt, Option } from "effect"
|
|
211
234
|
*
|
|
212
235
|
* assert.deepStrictEqual(BigInt.divide(6n, 3n), Option.some(2n))
|
|
213
236
|
* assert.deepStrictEqual(BigInt.divide(6n, 0n), Option.none())
|
|
237
|
+
* ```
|
|
214
238
|
*
|
|
215
239
|
* @category math
|
|
216
240
|
* @since 2.0.0
|
|
@@ -228,10 +252,12 @@ export const divide: {
|
|
|
228
252
|
* @param that - The divisor operand.
|
|
229
253
|
*
|
|
230
254
|
* @example
|
|
255
|
+
* ```ts
|
|
231
256
|
* import { BigInt, Option } from "effect"
|
|
232
257
|
*
|
|
233
258
|
* assert.deepStrictEqual(BigInt.divide(6n, 3n), Option.some(2n))
|
|
234
259
|
* assert.deepStrictEqual(BigInt.divide(6n, 0n), Option.none())
|
|
260
|
+
* ```
|
|
235
261
|
*
|
|
236
262
|
* @category math
|
|
237
263
|
* @since 2.0.0
|
|
@@ -254,10 +280,12 @@ export const divide: {
|
|
|
254
280
|
* @param that - The divisor operand.
|
|
255
281
|
*
|
|
256
282
|
* @example
|
|
283
|
+
* ```ts
|
|
257
284
|
* import { unsafeDivide } from "effect/BigInt"
|
|
258
285
|
*
|
|
259
286
|
* assert.deepStrictEqual(unsafeDivide(6n, 3n), 2n)
|
|
260
287
|
* assert.deepStrictEqual(unsafeDivide(6n, 4n), 1n)
|
|
288
|
+
* ```
|
|
261
289
|
*
|
|
262
290
|
* @category math
|
|
263
291
|
* @since 2.0.0
|
|
@@ -275,10 +303,12 @@ export const unsafeDivide: {
|
|
|
275
303
|
* @param that - The divisor operand.
|
|
276
304
|
*
|
|
277
305
|
* @example
|
|
306
|
+
* ```ts
|
|
278
307
|
* import { unsafeDivide } from "effect/BigInt"
|
|
279
308
|
*
|
|
280
309
|
* assert.deepStrictEqual(unsafeDivide(6n, 3n), 2n)
|
|
281
310
|
* assert.deepStrictEqual(unsafeDivide(6n, 4n), 1n)
|
|
311
|
+
* ```
|
|
282
312
|
*
|
|
283
313
|
* @category math
|
|
284
314
|
* @since 2.0.0
|
|
@@ -296,10 +326,12 @@ export const unsafeDivide: {
|
|
|
296
326
|
* @param that - The divisor operand.
|
|
297
327
|
*
|
|
298
328
|
* @example
|
|
329
|
+
* ```ts
|
|
299
330
|
* import { unsafeDivide } from "effect/BigInt"
|
|
300
331
|
*
|
|
301
332
|
* assert.deepStrictEqual(unsafeDivide(6n, 3n), 2n)
|
|
302
333
|
* assert.deepStrictEqual(unsafeDivide(6n, 4n), 1n)
|
|
334
|
+
* ```
|
|
303
335
|
*
|
|
304
336
|
* @category math
|
|
305
337
|
* @since 2.0.0
|
|
@@ -313,9 +345,11 @@ export const unsafeDivide: {
|
|
|
313
345
|
* @param n - A `bigint` to be incremented.
|
|
314
346
|
*
|
|
315
347
|
* @example
|
|
348
|
+
* ```ts
|
|
316
349
|
* import { increment } from "effect/BigInt"
|
|
317
350
|
*
|
|
318
351
|
* assert.deepStrictEqual(increment(2n), 3n)
|
|
352
|
+
* ```
|
|
319
353
|
*
|
|
320
354
|
* @category math
|
|
321
355
|
* @since 2.0.0
|
|
@@ -328,9 +362,11 @@ export const increment = (n: bigint): bigint => n + bigint1
|
|
|
328
362
|
* @param n - A `bigint` to be decremented.
|
|
329
363
|
*
|
|
330
364
|
* @example
|
|
365
|
+
* ```ts
|
|
331
366
|
* import { decrement } from "effect/BigInt"
|
|
332
367
|
*
|
|
333
368
|
* assert.deepStrictEqual(decrement(3n), 2n)
|
|
369
|
+
* ```
|
|
334
370
|
*
|
|
335
371
|
* @category math
|
|
336
372
|
* @since 2.0.0
|
|
@@ -356,11 +392,13 @@ export const Order: order.Order<bigint> = order.bigint
|
|
|
356
392
|
* @param that - The second argument.
|
|
357
393
|
*
|
|
358
394
|
* @example
|
|
395
|
+
* ```ts
|
|
359
396
|
* import { lessThan } from "effect/BigInt"
|
|
360
397
|
*
|
|
361
398
|
* assert.deepStrictEqual(lessThan(2n, 3n), true)
|
|
362
399
|
* assert.deepStrictEqual(lessThan(3n, 3n), false)
|
|
363
400
|
* assert.deepStrictEqual(lessThan(4n, 3n), false)
|
|
401
|
+
* ```
|
|
364
402
|
*
|
|
365
403
|
* @category predicates
|
|
366
404
|
* @since 2.0.0
|
|
@@ -373,11 +411,13 @@ export const lessThan: {
|
|
|
373
411
|
* @param that - The second argument.
|
|
374
412
|
*
|
|
375
413
|
* @example
|
|
414
|
+
* ```ts
|
|
376
415
|
* import { lessThan } from "effect/BigInt"
|
|
377
416
|
*
|
|
378
417
|
* assert.deepStrictEqual(lessThan(2n, 3n), true)
|
|
379
418
|
* assert.deepStrictEqual(lessThan(3n, 3n), false)
|
|
380
419
|
* assert.deepStrictEqual(lessThan(4n, 3n), false)
|
|
420
|
+
* ```
|
|
381
421
|
*
|
|
382
422
|
* @category predicates
|
|
383
423
|
* @since 2.0.0
|
|
@@ -390,11 +430,13 @@ export const lessThan: {
|
|
|
390
430
|
* @param that - The second argument.
|
|
391
431
|
*
|
|
392
432
|
* @example
|
|
433
|
+
* ```ts
|
|
393
434
|
* import { lessThan } from "effect/BigInt"
|
|
394
435
|
*
|
|
395
436
|
* assert.deepStrictEqual(lessThan(2n, 3n), true)
|
|
396
437
|
* assert.deepStrictEqual(lessThan(3n, 3n), false)
|
|
397
438
|
* assert.deepStrictEqual(lessThan(4n, 3n), false)
|
|
439
|
+
* ```
|
|
398
440
|
*
|
|
399
441
|
* @category predicates
|
|
400
442
|
* @since 2.0.0
|
|
@@ -409,11 +451,13 @@ export const lessThan: {
|
|
|
409
451
|
* @param that - The second `bigint` to compare with.
|
|
410
452
|
*
|
|
411
453
|
* @example
|
|
454
|
+
* ```ts
|
|
412
455
|
* import { lessThanOrEqualTo } from "effect/BigInt"
|
|
413
456
|
*
|
|
414
457
|
* assert.deepStrictEqual(lessThanOrEqualTo(2n, 3n), true)
|
|
415
458
|
* assert.deepStrictEqual(lessThanOrEqualTo(3n, 3n), true)
|
|
416
459
|
* assert.deepStrictEqual(lessThanOrEqualTo(4n, 3n), false)
|
|
460
|
+
* ```
|
|
417
461
|
*
|
|
418
462
|
* @category predicates
|
|
419
463
|
* @since 2.0.0
|
|
@@ -426,11 +470,13 @@ export const lessThanOrEqualTo: {
|
|
|
426
470
|
* @param that - The second `bigint` to compare with.
|
|
427
471
|
*
|
|
428
472
|
* @example
|
|
473
|
+
* ```ts
|
|
429
474
|
* import { lessThanOrEqualTo } from "effect/BigInt"
|
|
430
475
|
*
|
|
431
476
|
* assert.deepStrictEqual(lessThanOrEqualTo(2n, 3n), true)
|
|
432
477
|
* assert.deepStrictEqual(lessThanOrEqualTo(3n, 3n), true)
|
|
433
478
|
* assert.deepStrictEqual(lessThanOrEqualTo(4n, 3n), false)
|
|
479
|
+
* ```
|
|
434
480
|
*
|
|
435
481
|
* @category predicates
|
|
436
482
|
* @since 2.0.0
|
|
@@ -443,11 +489,13 @@ export const lessThanOrEqualTo: {
|
|
|
443
489
|
* @param that - The second `bigint` to compare with.
|
|
444
490
|
*
|
|
445
491
|
* @example
|
|
492
|
+
* ```ts
|
|
446
493
|
* import { lessThanOrEqualTo } from "effect/BigInt"
|
|
447
494
|
*
|
|
448
495
|
* assert.deepStrictEqual(lessThanOrEqualTo(2n, 3n), true)
|
|
449
496
|
* assert.deepStrictEqual(lessThanOrEqualTo(3n, 3n), true)
|
|
450
497
|
* assert.deepStrictEqual(lessThanOrEqualTo(4n, 3n), false)
|
|
498
|
+
* ```
|
|
451
499
|
*
|
|
452
500
|
* @category predicates
|
|
453
501
|
* @since 2.0.0
|
|
@@ -462,11 +510,13 @@ export const lessThanOrEqualTo: {
|
|
|
462
510
|
* @param that - The second argument.
|
|
463
511
|
*
|
|
464
512
|
* @example
|
|
513
|
+
* ```ts
|
|
465
514
|
* import { greaterThan } from "effect/BigInt"
|
|
466
515
|
*
|
|
467
516
|
* assert.deepStrictEqual(greaterThan(2n, 3n), false)
|
|
468
517
|
* assert.deepStrictEqual(greaterThan(3n, 3n), false)
|
|
469
518
|
* assert.deepStrictEqual(greaterThan(4n, 3n), true)
|
|
519
|
+
* ```
|
|
470
520
|
*
|
|
471
521
|
* @category predicates
|
|
472
522
|
* @since 2.0.0
|
|
@@ -479,11 +529,13 @@ export const greaterThan: {
|
|
|
479
529
|
* @param that - The second argument.
|
|
480
530
|
*
|
|
481
531
|
* @example
|
|
532
|
+
* ```ts
|
|
482
533
|
* import { greaterThan } from "effect/BigInt"
|
|
483
534
|
*
|
|
484
535
|
* assert.deepStrictEqual(greaterThan(2n, 3n), false)
|
|
485
536
|
* assert.deepStrictEqual(greaterThan(3n, 3n), false)
|
|
486
537
|
* assert.deepStrictEqual(greaterThan(4n, 3n), true)
|
|
538
|
+
* ```
|
|
487
539
|
*
|
|
488
540
|
* @category predicates
|
|
489
541
|
* @since 2.0.0
|
|
@@ -496,11 +548,13 @@ export const greaterThan: {
|
|
|
496
548
|
* @param that - The second argument.
|
|
497
549
|
*
|
|
498
550
|
* @example
|
|
551
|
+
* ```ts
|
|
499
552
|
* import { greaterThan } from "effect/BigInt"
|
|
500
553
|
*
|
|
501
554
|
* assert.deepStrictEqual(greaterThan(2n, 3n), false)
|
|
502
555
|
* assert.deepStrictEqual(greaterThan(3n, 3n), false)
|
|
503
556
|
* assert.deepStrictEqual(greaterThan(4n, 3n), true)
|
|
557
|
+
* ```
|
|
504
558
|
*
|
|
505
559
|
* @category predicates
|
|
506
560
|
* @since 2.0.0
|
|
@@ -515,11 +569,13 @@ export const greaterThan: {
|
|
|
515
569
|
* @param that - The second `bigint` to compare with.
|
|
516
570
|
*
|
|
517
571
|
* @example
|
|
572
|
+
* ```ts
|
|
518
573
|
* import { greaterThanOrEqualTo } from "effect/BigInt"
|
|
519
574
|
*
|
|
520
575
|
* assert.deepStrictEqual(greaterThanOrEqualTo(2n, 3n), false)
|
|
521
576
|
* assert.deepStrictEqual(greaterThanOrEqualTo(3n, 3n), true)
|
|
522
577
|
* assert.deepStrictEqual(greaterThanOrEqualTo(4n, 3n), true)
|
|
578
|
+
* ```
|
|
523
579
|
*
|
|
524
580
|
* @category predicates
|
|
525
581
|
* @since 2.0.0
|
|
@@ -532,11 +588,13 @@ export const greaterThanOrEqualTo: {
|
|
|
532
588
|
* @param that - The second `bigint` to compare with.
|
|
533
589
|
*
|
|
534
590
|
* @example
|
|
591
|
+
* ```ts
|
|
535
592
|
* import { greaterThanOrEqualTo } from "effect/BigInt"
|
|
536
593
|
*
|
|
537
594
|
* assert.deepStrictEqual(greaterThanOrEqualTo(2n, 3n), false)
|
|
538
595
|
* assert.deepStrictEqual(greaterThanOrEqualTo(3n, 3n), true)
|
|
539
596
|
* assert.deepStrictEqual(greaterThanOrEqualTo(4n, 3n), true)
|
|
597
|
+
* ```
|
|
540
598
|
*
|
|
541
599
|
* @category predicates
|
|
542
600
|
* @since 2.0.0
|
|
@@ -549,11 +607,13 @@ export const greaterThanOrEqualTo: {
|
|
|
549
607
|
* @param that - The second `bigint` to compare with.
|
|
550
608
|
*
|
|
551
609
|
* @example
|
|
610
|
+
* ```ts
|
|
552
611
|
* import { greaterThanOrEqualTo } from "effect/BigInt"
|
|
553
612
|
*
|
|
554
613
|
* assert.deepStrictEqual(greaterThanOrEqualTo(2n, 3n), false)
|
|
555
614
|
* assert.deepStrictEqual(greaterThanOrEqualTo(3n, 3n), true)
|
|
556
615
|
* assert.deepStrictEqual(greaterThanOrEqualTo(4n, 3n), true)
|
|
616
|
+
* ```
|
|
557
617
|
*
|
|
558
618
|
* @category predicates
|
|
559
619
|
* @since 2.0.0
|
|
@@ -569,6 +629,7 @@ export const greaterThanOrEqualTo: {
|
|
|
569
629
|
* @param maximum - The `maximum` value to check.
|
|
570
630
|
*
|
|
571
631
|
* @example
|
|
632
|
+
* ```ts
|
|
572
633
|
* import { BigInt } from "effect"
|
|
573
634
|
*
|
|
574
635
|
* const between = BigInt.between({ minimum: 0n, maximum: 5n })
|
|
@@ -576,6 +637,7 @@ export const greaterThanOrEqualTo: {
|
|
|
576
637
|
* assert.deepStrictEqual(between(3n), true)
|
|
577
638
|
* assert.deepStrictEqual(between(-1n), false)
|
|
578
639
|
* assert.deepStrictEqual(between(6n), false)
|
|
640
|
+
* ```
|
|
579
641
|
*
|
|
580
642
|
* @category predicates
|
|
581
643
|
* @since 2.0.0
|
|
@@ -589,6 +651,7 @@ export const between: {
|
|
|
589
651
|
* @param maximum - The `maximum` value to check.
|
|
590
652
|
*
|
|
591
653
|
* @example
|
|
654
|
+
* ```ts
|
|
592
655
|
* import { BigInt } from "effect"
|
|
593
656
|
*
|
|
594
657
|
* const between = BigInt.between({ minimum: 0n, maximum: 5n })
|
|
@@ -596,6 +659,7 @@ export const between: {
|
|
|
596
659
|
* assert.deepStrictEqual(between(3n), true)
|
|
597
660
|
* assert.deepStrictEqual(between(-1n), false)
|
|
598
661
|
* assert.deepStrictEqual(between(6n), false)
|
|
662
|
+
* ```
|
|
599
663
|
*
|
|
600
664
|
* @category predicates
|
|
601
665
|
* @since 2.0.0
|
|
@@ -614,6 +678,7 @@ export const between: {
|
|
|
614
678
|
* @param maximum - The `maximum` value to check.
|
|
615
679
|
*
|
|
616
680
|
* @example
|
|
681
|
+
* ```ts
|
|
617
682
|
* import { BigInt } from "effect"
|
|
618
683
|
*
|
|
619
684
|
* const between = BigInt.between({ minimum: 0n, maximum: 5n })
|
|
@@ -621,6 +686,7 @@ export const between: {
|
|
|
621
686
|
* assert.deepStrictEqual(between(3n), true)
|
|
622
687
|
* assert.deepStrictEqual(between(-1n), false)
|
|
623
688
|
* assert.deepStrictEqual(between(6n), false)
|
|
689
|
+
* ```
|
|
624
690
|
*
|
|
625
691
|
* @category predicates
|
|
626
692
|
* @since 2.0.0
|
|
@@ -646,6 +712,7 @@ export const between: {
|
|
|
646
712
|
* @param maximum - The upper end of the range.
|
|
647
713
|
*
|
|
648
714
|
* @example
|
|
715
|
+
* ```ts
|
|
649
716
|
* import { BigInt } from "effect"
|
|
650
717
|
*
|
|
651
718
|
* const clamp = BigInt.clamp({ minimum: 1n, maximum: 5n })
|
|
@@ -653,6 +720,7 @@ export const between: {
|
|
|
653
720
|
* assert.equal(clamp(3n), 3n)
|
|
654
721
|
* assert.equal(clamp(0n), 1n)
|
|
655
722
|
* assert.equal(clamp(6n), 5n)
|
|
723
|
+
* ```
|
|
656
724
|
*
|
|
657
725
|
* @since 2.0.0
|
|
658
726
|
*/
|
|
@@ -669,6 +737,7 @@ export const clamp: {
|
|
|
669
737
|
* @param maximum - The upper end of the range.
|
|
670
738
|
*
|
|
671
739
|
* @example
|
|
740
|
+
* ```ts
|
|
672
741
|
* import { BigInt } from "effect"
|
|
673
742
|
*
|
|
674
743
|
* const clamp = BigInt.clamp({ minimum: 1n, maximum: 5n })
|
|
@@ -676,6 +745,7 @@ export const clamp: {
|
|
|
676
745
|
* assert.equal(clamp(3n), 3n)
|
|
677
746
|
* assert.equal(clamp(0n), 1n)
|
|
678
747
|
* assert.equal(clamp(6n), 5n)
|
|
748
|
+
* ```
|
|
679
749
|
*
|
|
680
750
|
* @since 2.0.0
|
|
681
751
|
*/
|
|
@@ -697,6 +767,7 @@ export const clamp: {
|
|
|
697
767
|
* @param maximum - The upper end of the range.
|
|
698
768
|
*
|
|
699
769
|
* @example
|
|
770
|
+
* ```ts
|
|
700
771
|
* import { BigInt } from "effect"
|
|
701
772
|
*
|
|
702
773
|
* const clamp = BigInt.clamp({ minimum: 1n, maximum: 5n })
|
|
@@ -704,6 +775,7 @@ export const clamp: {
|
|
|
704
775
|
* assert.equal(clamp(3n), 3n)
|
|
705
776
|
* assert.equal(clamp(0n), 1n)
|
|
706
777
|
* assert.equal(clamp(6n), 5n)
|
|
778
|
+
* ```
|
|
707
779
|
*
|
|
708
780
|
* @since 2.0.0
|
|
709
781
|
*/
|
|
@@ -723,9 +795,11 @@ export const clamp: {
|
|
|
723
795
|
* @param that - The second `bigint`.
|
|
724
796
|
*
|
|
725
797
|
* @example
|
|
798
|
+
* ```ts
|
|
726
799
|
* import { min } from "effect/BigInt"
|
|
727
800
|
*
|
|
728
801
|
* assert.deepStrictEqual(min(2n, 3n), 2n)
|
|
802
|
+
* ```
|
|
729
803
|
*
|
|
730
804
|
* @since 2.0.0
|
|
731
805
|
*/
|
|
@@ -737,9 +811,11 @@ export const min: {
|
|
|
737
811
|
* @param that - The second `bigint`.
|
|
738
812
|
*
|
|
739
813
|
* @example
|
|
814
|
+
* ```ts
|
|
740
815
|
* import { min } from "effect/BigInt"
|
|
741
816
|
*
|
|
742
817
|
* assert.deepStrictEqual(min(2n, 3n), 2n)
|
|
818
|
+
* ```
|
|
743
819
|
*
|
|
744
820
|
* @since 2.0.0
|
|
745
821
|
*/
|
|
@@ -751,9 +827,11 @@ export const min: {
|
|
|
751
827
|
* @param that - The second `bigint`.
|
|
752
828
|
*
|
|
753
829
|
* @example
|
|
830
|
+
* ```ts
|
|
754
831
|
* import { min } from "effect/BigInt"
|
|
755
832
|
*
|
|
756
833
|
* assert.deepStrictEqual(min(2n, 3n), 2n)
|
|
834
|
+
* ```
|
|
757
835
|
*
|
|
758
836
|
* @since 2.0.0
|
|
759
837
|
*/
|
|
@@ -767,9 +845,11 @@ export const min: {
|
|
|
767
845
|
* @param that - The second `bigint`.
|
|
768
846
|
*
|
|
769
847
|
* @example
|
|
848
|
+
* ```ts
|
|
770
849
|
* import { max } from "effect/BigInt"
|
|
771
850
|
*
|
|
772
851
|
* assert.deepStrictEqual(max(2n, 3n), 3n)
|
|
852
|
+
* ```
|
|
773
853
|
*
|
|
774
854
|
* @since 2.0.0
|
|
775
855
|
*/
|
|
@@ -781,9 +861,11 @@ export const max: {
|
|
|
781
861
|
* @param that - The second `bigint`.
|
|
782
862
|
*
|
|
783
863
|
* @example
|
|
864
|
+
* ```ts
|
|
784
865
|
* import { max } from "effect/BigInt"
|
|
785
866
|
*
|
|
786
867
|
* assert.deepStrictEqual(max(2n, 3n), 3n)
|
|
868
|
+
* ```
|
|
787
869
|
*
|
|
788
870
|
* @since 2.0.0
|
|
789
871
|
*/
|
|
@@ -795,9 +877,11 @@ export const max: {
|
|
|
795
877
|
* @param that - The second `bigint`.
|
|
796
878
|
*
|
|
797
879
|
* @example
|
|
880
|
+
* ```ts
|
|
798
881
|
* import { max } from "effect/BigInt"
|
|
799
882
|
*
|
|
800
883
|
* assert.deepStrictEqual(max(2n, 3n), 3n)
|
|
884
|
+
* ```
|
|
801
885
|
*
|
|
802
886
|
* @since 2.0.0
|
|
803
887
|
*/
|
|
@@ -810,11 +894,13 @@ export const max: {
|
|
|
810
894
|
* @param n - The `bigint` to determine the sign of.
|
|
811
895
|
*
|
|
812
896
|
* @example
|
|
897
|
+
* ```ts
|
|
813
898
|
* import { sign } from "effect/BigInt"
|
|
814
899
|
*
|
|
815
900
|
* assert.deepStrictEqual(sign(-5n), -1)
|
|
816
901
|
* assert.deepStrictEqual(sign(0n), 0)
|
|
817
902
|
* assert.deepStrictEqual(sign(5n), 1)
|
|
903
|
+
* ```
|
|
818
904
|
*
|
|
819
905
|
* @category math
|
|
820
906
|
* @since 2.0.0
|
|
@@ -827,11 +913,13 @@ export const sign = (n: bigint): Ordering => Order(n, bigint0)
|
|
|
827
913
|
* @param n - The `bigint` to determine the absolute value of.
|
|
828
914
|
*
|
|
829
915
|
* @example
|
|
916
|
+
* ```ts
|
|
830
917
|
* import { abs } from "effect/BigInt"
|
|
831
918
|
*
|
|
832
919
|
* assert.deepStrictEqual(abs(-5n), 5n)
|
|
833
920
|
* assert.deepStrictEqual(abs(0n), 0n)
|
|
834
921
|
* assert.deepStrictEqual(abs(5n), 5n)
|
|
922
|
+
* ```
|
|
835
923
|
*
|
|
836
924
|
* @category math
|
|
837
925
|
* @since 2.0.0
|
|
@@ -845,11 +933,13 @@ export const abs = (n: bigint): bigint => (n < bigint0 ? -n : n)
|
|
|
845
933
|
* @param b - The second `bigint`.
|
|
846
934
|
*
|
|
847
935
|
* @example
|
|
936
|
+
* ```ts
|
|
848
937
|
* import { gcd } from "effect/BigInt"
|
|
849
938
|
*
|
|
850
939
|
* assert.deepStrictEqual(gcd(2n, 3n), 1n)
|
|
851
940
|
* assert.deepStrictEqual(gcd(2n, 4n), 2n)
|
|
852
941
|
* assert.deepStrictEqual(gcd(16n, 24n), 8n)
|
|
942
|
+
* ```
|
|
853
943
|
*
|
|
854
944
|
* @category math
|
|
855
945
|
* @since 2.0.0
|
|
@@ -862,11 +952,13 @@ export const gcd: {
|
|
|
862
952
|
* @param b - The second `bigint`.
|
|
863
953
|
*
|
|
864
954
|
* @example
|
|
955
|
+
* ```ts
|
|
865
956
|
* import { gcd } from "effect/BigInt"
|
|
866
957
|
*
|
|
867
958
|
* assert.deepStrictEqual(gcd(2n, 3n), 1n)
|
|
868
959
|
* assert.deepStrictEqual(gcd(2n, 4n), 2n)
|
|
869
960
|
* assert.deepStrictEqual(gcd(16n, 24n), 8n)
|
|
961
|
+
* ```
|
|
870
962
|
*
|
|
871
963
|
* @category math
|
|
872
964
|
* @since 2.0.0
|
|
@@ -879,11 +971,13 @@ export const gcd: {
|
|
|
879
971
|
* @param b - The second `bigint`.
|
|
880
972
|
*
|
|
881
973
|
* @example
|
|
974
|
+
* ```ts
|
|
882
975
|
* import { gcd } from "effect/BigInt"
|
|
883
976
|
*
|
|
884
977
|
* assert.deepStrictEqual(gcd(2n, 3n), 1n)
|
|
885
978
|
* assert.deepStrictEqual(gcd(2n, 4n), 2n)
|
|
886
979
|
* assert.deepStrictEqual(gcd(16n, 24n), 8n)
|
|
980
|
+
* ```
|
|
887
981
|
*
|
|
888
982
|
* @category math
|
|
889
983
|
* @since 2.0.0
|
|
@@ -905,11 +999,13 @@ export const gcd: {
|
|
|
905
999
|
* @param b - The second `bigint`.
|
|
906
1000
|
*
|
|
907
1001
|
* @example
|
|
1002
|
+
* ```ts
|
|
908
1003
|
* import { lcm } from "effect/BigInt"
|
|
909
1004
|
*
|
|
910
1005
|
* assert.deepStrictEqual(lcm(2n, 3n), 6n)
|
|
911
1006
|
* assert.deepStrictEqual(lcm(2n, 4n), 4n)
|
|
912
1007
|
* assert.deepStrictEqual(lcm(16n, 24n), 48n)
|
|
1008
|
+
* ```
|
|
913
1009
|
*
|
|
914
1010
|
* @category math
|
|
915
1011
|
* @since 2.0.0
|
|
@@ -922,11 +1018,13 @@ export const lcm: {
|
|
|
922
1018
|
* @param b - The second `bigint`.
|
|
923
1019
|
*
|
|
924
1020
|
* @example
|
|
1021
|
+
* ```ts
|
|
925
1022
|
* import { lcm } from "effect/BigInt"
|
|
926
1023
|
*
|
|
927
1024
|
* assert.deepStrictEqual(lcm(2n, 3n), 6n)
|
|
928
1025
|
* assert.deepStrictEqual(lcm(2n, 4n), 4n)
|
|
929
1026
|
* assert.deepStrictEqual(lcm(16n, 24n), 48n)
|
|
1027
|
+
* ```
|
|
930
1028
|
*
|
|
931
1029
|
* @category math
|
|
932
1030
|
* @since 2.0.0
|
|
@@ -939,11 +1037,13 @@ export const lcm: {
|
|
|
939
1037
|
* @param b - The second `bigint`.
|
|
940
1038
|
*
|
|
941
1039
|
* @example
|
|
1040
|
+
* ```ts
|
|
942
1041
|
* import { lcm } from "effect/BigInt"
|
|
943
1042
|
*
|
|
944
1043
|
* assert.deepStrictEqual(lcm(2n, 3n), 6n)
|
|
945
1044
|
* assert.deepStrictEqual(lcm(2n, 4n), 4n)
|
|
946
1045
|
* assert.deepStrictEqual(lcm(16n, 24n), 48n)
|
|
1046
|
+
* ```
|
|
947
1047
|
*
|
|
948
1048
|
* @category math
|
|
949
1049
|
* @since 2.0.0
|
|
@@ -957,11 +1057,13 @@ export const lcm: {
|
|
|
957
1057
|
* @param n - The `bigint` to determine the square root of.
|
|
958
1058
|
*
|
|
959
1059
|
* @example
|
|
1060
|
+
* ```ts
|
|
960
1061
|
* import { unsafeSqrt } from "effect/BigInt"
|
|
961
1062
|
*
|
|
962
1063
|
* assert.deepStrictEqual(unsafeSqrt(4n), 2n)
|
|
963
1064
|
* assert.deepStrictEqual(unsafeSqrt(9n), 3n)
|
|
964
1065
|
* assert.deepStrictEqual(unsafeSqrt(16n), 4n)
|
|
1066
|
+
* ```
|
|
965
1067
|
*
|
|
966
1068
|
* @category math
|
|
967
1069
|
* @since 2.0.0
|
|
@@ -986,12 +1088,14 @@ export const unsafeSqrt = (n: bigint): bigint => {
|
|
|
986
1088
|
* @param n - The `bigint` to determine the square root of.
|
|
987
1089
|
*
|
|
988
1090
|
* @example
|
|
1091
|
+
* ```ts
|
|
989
1092
|
* import { BigInt, Option } from "effect"
|
|
990
1093
|
*
|
|
991
1094
|
* assert.deepStrictEqual(BigInt.sqrt(4n), Option.some(2n))
|
|
992
1095
|
* assert.deepStrictEqual(BigInt.sqrt(9n), Option.some(3n))
|
|
993
1096
|
* assert.deepStrictEqual(BigInt.sqrt(16n), Option.some(4n))
|
|
994
1097
|
* assert.deepStrictEqual(BigInt.sqrt(-1n), Option.none())
|
|
1098
|
+
* ```
|
|
995
1099
|
*
|
|
996
1100
|
* @category math
|
|
997
1101
|
* @since 2.0.0
|
|
@@ -1005,9 +1109,11 @@ export const sqrt = (n: bigint): Option.Option<bigint> =>
|
|
|
1005
1109
|
* @param collection - The collection of `bigint`s to sum.
|
|
1006
1110
|
*
|
|
1007
1111
|
* @example
|
|
1112
|
+
* ```ts
|
|
1008
1113
|
* import { sumAll } from "effect/BigInt"
|
|
1009
1114
|
*
|
|
1010
1115
|
* assert.deepStrictEqual(sumAll([2n, 3n, 4n]), 9n)
|
|
1116
|
+
* ```
|
|
1011
1117
|
*
|
|
1012
1118
|
* @category math
|
|
1013
1119
|
* @since 2.0.0
|
|
@@ -1026,9 +1132,11 @@ export const sumAll = (collection: Iterable<bigint>): bigint => {
|
|
|
1026
1132
|
* @param collection - The collection of `bigint`s to multiply.
|
|
1027
1133
|
*
|
|
1028
1134
|
* @example
|
|
1135
|
+
* ```ts
|
|
1029
1136
|
* import { multiplyAll } from "effect/BigInt"
|
|
1030
1137
|
*
|
|
1031
1138
|
* assert.deepStrictEqual(multiplyAll([2n, 3n, 4n]), 24n)
|
|
1139
|
+
* ```
|
|
1032
1140
|
*
|
|
1033
1141
|
* @category math
|
|
1034
1142
|
* @since 2.0.0
|
|
@@ -1054,11 +1162,13 @@ export const multiplyAll = (collection: Iterable<bigint>): bigint => {
|
|
|
1054
1162
|
* @param b - The `bigint` to be converted to a `number`.
|
|
1055
1163
|
*
|
|
1056
1164
|
* @example
|
|
1165
|
+
* ```ts
|
|
1057
1166
|
* import { BigInt as BI, Option } from "effect"
|
|
1058
1167
|
*
|
|
1059
1168
|
* assert.deepStrictEqual(BI.toNumber(BigInt(42)), Option.some(42))
|
|
1060
1169
|
* assert.deepStrictEqual(BI.toNumber(BigInt(Number.MAX_SAFE_INTEGER) + BigInt(1)), Option.none())
|
|
1061
1170
|
* assert.deepStrictEqual(BI.toNumber(BigInt(Number.MIN_SAFE_INTEGER) - BigInt(1)), Option.none())
|
|
1171
|
+
* ```
|
|
1062
1172
|
*
|
|
1063
1173
|
* @category conversions
|
|
1064
1174
|
* @since 2.0.0
|
|
@@ -1079,11 +1189,13 @@ export const toNumber = (b: bigint): Option.Option<number> => {
|
|
|
1079
1189
|
* @param s - The string to be converted to a `bigint`.
|
|
1080
1190
|
*
|
|
1081
1191
|
* @example
|
|
1192
|
+
* ```ts
|
|
1082
1193
|
* import { BigInt as BI, Option } from "effect"
|
|
1083
1194
|
*
|
|
1084
1195
|
* assert.deepStrictEqual(BI.fromString("42"), Option.some(BigInt(42)))
|
|
1085
1196
|
* assert.deepStrictEqual(BI.fromString(" "), Option.none())
|
|
1086
1197
|
* assert.deepStrictEqual(BI.fromString("a"), Option.none())
|
|
1198
|
+
* ```
|
|
1087
1199
|
*
|
|
1088
1200
|
* @category conversions
|
|
1089
1201
|
* @since 2.4.12
|
|
@@ -1108,11 +1220,13 @@ export const fromString = (s: string): Option.Option<bigint> => {
|
|
|
1108
1220
|
* @param n - The number to be converted to a `bigint`.
|
|
1109
1221
|
*
|
|
1110
1222
|
* @example
|
|
1223
|
+
* ```ts
|
|
1111
1224
|
* import { BigInt as BI, Option } from "effect"
|
|
1112
1225
|
*
|
|
1113
1226
|
* assert.deepStrictEqual(BI.fromNumber(42), Option.some(BigInt(42)))
|
|
1114
1227
|
* assert.deepStrictEqual(BI.fromNumber(Number.MAX_SAFE_INTEGER + 1), Option.none())
|
|
1115
1228
|
* assert.deepStrictEqual(BI.fromNumber(Number.MIN_SAFE_INTEGER - 1), Option.none())
|
|
1229
|
+
* ```
|
|
1116
1230
|
*
|
|
1117
1231
|
* @category conversions
|
|
1118
1232
|
* @since 2.4.12
|