Добавлена ДБ
This commit is contained in:
288
node_modules/effect/src/FiberRefs.ts
generated
vendored
Normal file
288
node_modules/effect/src/FiberRefs.ts
generated
vendored
Normal file
@@ -0,0 +1,288 @@
|
||||
/**
|
||||
* @since 2.0.0
|
||||
*/
|
||||
import type * as Arr from "./Array.js"
|
||||
import type * as Effect from "./Effect.js"
|
||||
import type * as FiberId from "./FiberId.js"
|
||||
import type * as FiberRef from "./FiberRef.js"
|
||||
import type * as HashSet from "./HashSet.js"
|
||||
import * as internal from "./internal/fiberRefs.js"
|
||||
import type * as Option from "./Option.js"
|
||||
import type { Pipeable } from "./Pipeable.js"
|
||||
|
||||
/**
|
||||
* @since 2.0.0
|
||||
* @category symbols
|
||||
*/
|
||||
export const FiberRefsSym: unique symbol = internal.FiberRefsSym
|
||||
|
||||
/**
|
||||
* @since 2.0.0
|
||||
* @category symbols
|
||||
*/
|
||||
export type FiberRefsSym = typeof FiberRefsSym
|
||||
|
||||
/**
|
||||
* `FiberRefs` is a data type that represents a collection of `FiberRef` values.
|
||||
*
|
||||
* This allows safely propagating `FiberRef` values across fiber boundaries, for
|
||||
* example between an asynchronous producer and consumer.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category models
|
||||
*/
|
||||
export interface FiberRefs extends Pipeable {
|
||||
readonly [FiberRefsSym]: FiberRefsSym
|
||||
readonly locals: Map<FiberRef.FiberRef<any>, Arr.NonEmptyReadonlyArray<readonly [FiberId.Single, any]>>
|
||||
}
|
||||
|
||||
const delete_: {
|
||||
<A>(fiberRef: FiberRef.FiberRef<A>): (self: FiberRefs) => FiberRefs
|
||||
<A>(self: FiberRefs, fiberRef: FiberRef.FiberRef<A>): FiberRefs
|
||||
} = internal.delete_
|
||||
|
||||
export {
|
||||
/**
|
||||
* Deletes the specified `FiberRef` from the `FibterRefs`.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
delete_ as delete
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a set of each `FiberRef` in this collection.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
export const fiberRefs: (self: FiberRefs) => HashSet.HashSet<FiberRef.FiberRef<any>> = internal.fiberRefs
|
||||
|
||||
/**
|
||||
* Forks this collection of fiber refs as the specified child fiber id. This
|
||||
* will potentially modify the value of the fiber refs, as determined by the
|
||||
* individual fiber refs that make up the collection.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
export const forkAs: {
|
||||
/**
|
||||
* Forks this collection of fiber refs as the specified child fiber id. This
|
||||
* will potentially modify the value of the fiber refs, as determined by the
|
||||
* individual fiber refs that make up the collection.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
(childId: FiberId.Single): (self: FiberRefs) => FiberRefs
|
||||
/**
|
||||
* Forks this collection of fiber refs as the specified child fiber id. This
|
||||
* will potentially modify the value of the fiber refs, as determined by the
|
||||
* individual fiber refs that make up the collection.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
(self: FiberRefs, childId: FiberId.Single): FiberRefs
|
||||
} = internal.forkAs
|
||||
|
||||
/**
|
||||
* Gets the value of the specified `FiberRef` in this collection of `FiberRef`
|
||||
* values if it exists or `None` otherwise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
export const get: {
|
||||
/**
|
||||
* Gets the value of the specified `FiberRef` in this collection of `FiberRef`
|
||||
* values if it exists or `None` otherwise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
<A>(fiberRef: FiberRef.FiberRef<A>): (self: FiberRefs) => Option.Option<A>
|
||||
/**
|
||||
* Gets the value of the specified `FiberRef` in this collection of `FiberRef`
|
||||
* values if it exists or `None` otherwise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
<A>(self: FiberRefs, fiberRef: FiberRef.FiberRef<A>): Option.Option<A>
|
||||
} = internal.get
|
||||
|
||||
/**
|
||||
* Gets the value of the specified `FiberRef` in this collection of `FiberRef`
|
||||
* values if it exists or the `initial` value of the `FiberRef` otherwise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
export const getOrDefault: {
|
||||
/**
|
||||
* Gets the value of the specified `FiberRef` in this collection of `FiberRef`
|
||||
* values if it exists or the `initial` value of the `FiberRef` otherwise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
<A>(fiberRef: FiberRef.FiberRef<A>): (self: FiberRefs) => A
|
||||
/**
|
||||
* Gets the value of the specified `FiberRef` in this collection of `FiberRef`
|
||||
* values if it exists or the `initial` value of the `FiberRef` otherwise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category getters
|
||||
*/
|
||||
<A>(self: FiberRefs, fiberRef: FiberRef.FiberRef<A>): A
|
||||
} = internal.getOrDefault
|
||||
|
||||
/**
|
||||
* Joins this collection of fiber refs to the specified collection, as the
|
||||
* specified fiber id. This will perform diffing and merging to ensure
|
||||
* preservation of maximum information from both child and parent refs.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
export const joinAs: {
|
||||
/**
|
||||
* Joins this collection of fiber refs to the specified collection, as the
|
||||
* specified fiber id. This will perform diffing and merging to ensure
|
||||
* preservation of maximum information from both child and parent refs.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
(fiberId: FiberId.Single, that: FiberRefs): (self: FiberRefs) => FiberRefs
|
||||
/**
|
||||
* Joins this collection of fiber refs to the specified collection, as the
|
||||
* specified fiber id. This will perform diffing and merging to ensure
|
||||
* preservation of maximum information from both child and parent refs.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
(self: FiberRefs, fiberId: FiberId.Single, that: FiberRefs): FiberRefs
|
||||
} = internal.joinAs
|
||||
|
||||
/**
|
||||
* Set each ref to either its value or its default.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
export const setAll: (self: FiberRefs) => Effect.Effect<void> = internal.setAll
|
||||
|
||||
/**
|
||||
* Updates the value of the specified `FiberRef` using the provided `FiberId`
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
export const updateAs: {
|
||||
/**
|
||||
* Updates the value of the specified `FiberRef` using the provided `FiberId`
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
<A>(
|
||||
options: {
|
||||
readonly fiberId: FiberId.Single
|
||||
readonly fiberRef: FiberRef.FiberRef<A>
|
||||
readonly value: A
|
||||
}
|
||||
): (self: FiberRefs) => FiberRefs
|
||||
/**
|
||||
* Updates the value of the specified `FiberRef` using the provided `FiberId`
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
<A>(
|
||||
self: FiberRefs,
|
||||
options: {
|
||||
readonly fiberId: FiberId.Single
|
||||
readonly fiberRef: FiberRef.FiberRef<A>
|
||||
readonly value: A
|
||||
}
|
||||
): FiberRefs
|
||||
} = internal.updateAs
|
||||
|
||||
/**
|
||||
* Updates the values of the specified `FiberRef` & value pairs using the provided `FiberId`
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
export const updateManyAs: {
|
||||
/**
|
||||
* Updates the values of the specified `FiberRef` & value pairs using the provided `FiberId`
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
(
|
||||
options: {
|
||||
readonly forkAs?: FiberId.Single | undefined
|
||||
readonly entries: readonly [
|
||||
readonly [
|
||||
FiberRef.FiberRef<any>,
|
||||
readonly [readonly [FiberId.Single, any], ...Array<readonly [FiberId.Single, any]>]
|
||||
],
|
||||
...Array<
|
||||
readonly [
|
||||
FiberRef.FiberRef<any>,
|
||||
readonly [readonly [FiberId.Single, any], ...Array<readonly [FiberId.Single, any]>]
|
||||
]
|
||||
>
|
||||
]
|
||||
}
|
||||
): (self: FiberRefs) => FiberRefs
|
||||
/**
|
||||
* Updates the values of the specified `FiberRef` & value pairs using the provided `FiberId`
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category utils
|
||||
*/
|
||||
(
|
||||
self: FiberRefs,
|
||||
options: {
|
||||
readonly forkAs?: FiberId.Single | undefined
|
||||
readonly entries: readonly [
|
||||
readonly [
|
||||
FiberRef.FiberRef<any>,
|
||||
readonly [readonly [FiberId.Single, any], ...Array<readonly [FiberId.Single, any]>]
|
||||
],
|
||||
...Array<
|
||||
readonly [
|
||||
FiberRef.FiberRef<any>,
|
||||
readonly [readonly [FiberId.Single, any], ...Array<readonly [FiberId.Single, any]>]
|
||||
]
|
||||
>
|
||||
]
|
||||
}
|
||||
): FiberRefs
|
||||
} = internal.updateManyAs
|
||||
|
||||
/**
|
||||
* Note: it will not copy the provided Map, make sure to provide a fresh one.
|
||||
*
|
||||
* @since 2.0.0
|
||||
* @category unsafe
|
||||
*/
|
||||
export const unsafeMake: (
|
||||
fiberRefLocals: Map<FiberRef.FiberRef<any>, Arr.NonEmptyReadonlyArray<readonly [FiberId.Single, any]>>
|
||||
) => FiberRefs = internal.unsafeMake
|
||||
|
||||
/**
|
||||
* The empty collection of `FiberRef` values.
|
||||
*
|
||||
* @category constructors
|
||||
* @since 2.0.0
|
||||
*/
|
||||
export const empty: () => FiberRefs = internal.empty
|
||||
Reference in New Issue
Block a user