@shajara/kernel 0.1.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/LICENSE +28 -0
- package/README.md +67 -0
- package/dist/.vite/license.md +27 -0
- package/dist/contracts/context-key.d.ts +10 -0
- package/dist/contracts/context-key.d.ts.map +1 -0
- package/dist/contracts/failure.d.ts +5 -0
- package/dist/contracts/failure.d.ts.map +1 -0
- package/dist/contracts/future-key.d.ts +16 -0
- package/dist/contracts/future-key.d.ts.map +1 -0
- package/dist/contracts/index.d.ts +11 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/message-key.d.ts +10 -0
- package/dist/contracts/message-key.d.ts.map +1 -0
- package/dist/contracts/process.d.ts +7 -0
- package/dist/contracts/process.d.ts.map +1 -0
- package/dist/contracts/scope.d.ts +7 -0
- package/dist/contracts/scope.d.ts.map +1 -0
- package/dist/contracts/sigil.d.ts +7 -0
- package/dist/contracts/sigil.d.ts.map +1 -0
- package/dist/contracts/suppressor.d.ts +4 -0
- package/dist/contracts/suppressor.d.ts.map +1 -0
- package/dist/contracts/token.d.ts +4 -0
- package/dist/contracts/token.d.ts.map +1 -0
- package/dist/contracts/wisp.d.ts +19 -0
- package/dist/contracts/wisp.d.ts.map +1 -0
- package/dist/executor/autonomy.d.ts +24 -0
- package/dist/executor/autonomy.d.ts.map +1 -0
- package/dist/executor/domain-interpreter.d.ts +15 -0
- package/dist/executor/domain-interpreter.d.ts.map +1 -0
- package/dist/executor/domains/domain.d.ts +14 -0
- package/dist/executor/domains/domain.d.ts.map +1 -0
- package/dist/executor/domains/index.d.ts +4 -0
- package/dist/executor/domains/index.d.ts.map +1 -0
- package/dist/executor/domains/reaper.d.ts +26 -0
- package/dist/executor/domains/reaper.d.ts.map +1 -0
- package/dist/executor/domains/scheduler.d.ts +15 -0
- package/dist/executor/domains/scheduler.d.ts.map +1 -0
- package/dist/executor/execution-scope.d.ts +7 -0
- package/dist/executor/execution-scope.d.ts.map +1 -0
- package/dist/executor/executor-driver.d.ts +14 -0
- package/dist/executor/executor-driver.d.ts.map +1 -0
- package/dist/executor/executor.d.ts +13 -0
- package/dist/executor/executor.d.ts.map +1 -0
- package/dist/executor/fault-sink.d.ts +12 -0
- package/dist/executor/fault-sink.d.ts.map +1 -0
- package/dist/executor/index.d.ts +8 -0
- package/dist/executor/index.d.ts.map +1 -0
- package/dist/executor/launch-handle.d.ts +33 -0
- package/dist/executor/launch-handle.d.ts.map +1 -0
- package/dist/executor/pacer.d.ts +9 -0
- package/dist/executor/pacer.d.ts.map +1 -0
- package/dist/executor/primitives/autonomy.d.ts +4 -0
- package/dist/executor/primitives/autonomy.d.ts.map +1 -0
- package/dist/executor/primitives/index.d.ts +2 -0
- package/dist/executor/primitives/index.d.ts.map +1 -0
- package/dist/executor/processor.d.ts +9 -0
- package/dist/executor/processor.d.ts.map +1 -0
- package/dist/executor/round-limit-reaper.d.ts +11 -0
- package/dist/executor/round-limit-reaper.d.ts.map +1 -0
- package/dist/failures/canceled.d.ts +6 -0
- package/dist/failures/canceled.d.ts.map +1 -0
- package/dist/failures/external.d.ts +7 -0
- package/dist/failures/external.d.ts.map +1 -0
- package/dist/failures/index.d.ts +10 -0
- package/dist/failures/index.d.ts.map +1 -0
- package/dist/failures/interrupted.d.ts +7 -0
- package/dist/failures/interrupted.d.ts.map +1 -0
- package/dist/failures/scope.d.ts +19 -0
- package/dist/failures/scope.d.ts.map +1 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1986 -0
- package/dist/internal/fp/index.d.ts +6 -0
- package/dist/internal/fp/index.d.ts.map +1 -0
- package/dist/internal/fp/lifting.d.ts +21 -0
- package/dist/internal/fp/lifting.d.ts.map +1 -0
- package/dist/internal/fp/sigil.d.ts +11 -0
- package/dist/internal/fp/sigil.d.ts.map +1 -0
- package/dist/internal/fp/wisp-either.d.ts +53 -0
- package/dist/internal/fp/wisp-either.d.ts.map +1 -0
- package/dist/internal/fp/wisp-option.d.ts +52 -0
- package/dist/internal/fp/wisp-option.d.ts.map +1 -0
- package/dist/internal/fp/wisp.d.ts +37 -0
- package/dist/internal/fp/wisp.d.ts.map +1 -0
- package/dist/interpreter/index.d.ts +4 -0
- package/dist/interpreter/index.d.ts.map +1 -0
- package/dist/interpreter/interpreter.d.ts +48 -0
- package/dist/interpreter/interpreter.d.ts.map +1 -0
- package/dist/interpreter/process-step.d.ts +21 -0
- package/dist/interpreter/process-step.d.ts.map +1 -0
- package/dist/interpreter/runtime-future.d.ts +14 -0
- package/dist/interpreter/runtime-future.d.ts.map +1 -0
- package/dist/interpreter/runtime-process/handle.d.ts +9 -0
- package/dist/interpreter/runtime-process/handle.d.ts.map +1 -0
- package/dist/interpreter/runtime-process/index.d.ts +5 -0
- package/dist/interpreter/runtime-process/index.d.ts.map +1 -0
- package/dist/interpreter/runtime-process/keeper.d.ts +39 -0
- package/dist/interpreter/runtime-process/keeper.d.ts.map +1 -0
- package/dist/interpreter/runtime-process/process.d.ts +54 -0
- package/dist/interpreter/runtime-process/process.d.ts.map +1 -0
- package/dist/interpreter/runtime-process/runner.d.ts +45 -0
- package/dist/interpreter/runtime-process/runner.d.ts.map +1 -0
- package/dist/interpreter/runtime-process/stepper.d.ts +9 -0
- package/dist/interpreter/runtime-process/stepper.d.ts.map +1 -0
- package/dist/interpreter/runtime-scope/index.d.ts +2 -0
- package/dist/interpreter/runtime-scope/index.d.ts.map +1 -0
- package/dist/interpreter/runtime-scope/runtime-mailbox.d.ts +11 -0
- package/dist/interpreter/runtime-scope/runtime-mailbox.d.ts.map +1 -0
- package/dist/interpreter/runtime-scope/runtime-scope.d.ts +58 -0
- package/dist/interpreter/runtime-scope/runtime-scope.d.ts.map +1 -0
- package/dist/interpreter/runtime-scope/scope-failure-draft.d.ts +12 -0
- package/dist/interpreter/runtime-scope/scope-failure-draft.d.ts.map +1 -0
- package/dist/interpreter/scope-zone.d.ts +6 -0
- package/dist/interpreter/scope-zone.d.ts.map +1 -0
- package/dist/primitives/all.d.ts +7 -0
- package/dist/primitives/all.d.ts.map +1 -0
- package/dist/primitives/bind.d.ts +3 -0
- package/dist/primitives/bind.d.ts.map +1 -0
- package/dist/primitives/cancel.d.ts +3 -0
- package/dist/primitives/cancel.d.ts.map +1 -0
- package/dist/primitives/cede.d.ts +3 -0
- package/dist/primitives/cede.d.ts.map +1 -0
- package/dist/primitives/defer.d.ts +3 -0
- package/dist/primitives/defer.d.ts.map +1 -0
- package/dist/primitives/enclose.d.ts +4 -0
- package/dist/primitives/enclose.d.ts.map +1 -0
- package/dist/primitives/future.d.ts +3 -0
- package/dist/primitives/future.d.ts.map +1 -0
- package/dist/primitives/guard.d.ts +6 -0
- package/dist/primitives/guard.d.ts.map +1 -0
- package/dist/primitives/halt.d.ts +3 -0
- package/dist/primitives/halt.d.ts.map +1 -0
- package/dist/primitives/index.d.ts +21 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/lookup.d.ts +4 -0
- package/dist/primitives/lookup.d.ts.map +1 -0
- package/dist/primitives/park.d.ts +3 -0
- package/dist/primitives/park.d.ts.map +1 -0
- package/dist/primitives/poll.d.ts +4 -0
- package/dist/primitives/poll.d.ts.map +1 -0
- package/dist/primitives/race.d.ts +8 -0
- package/dist/primitives/race.d.ts.map +1 -0
- package/dist/primitives/resource.d.ts +5 -0
- package/dist/primitives/resource.d.ts.map +1 -0
- package/dist/primitives/resumable.d.ts +3 -0
- package/dist/primitives/resumable.d.ts.map +1 -0
- package/dist/primitives/self.d.ts +5 -0
- package/dist/primitives/self.d.ts.map +1 -0
- package/dist/primitives/settle.d.ts +3 -0
- package/dist/primitives/settle.d.ts.map +1 -0
- package/dist/primitives/spawn.d.ts +3 -0
- package/dist/primitives/spawn.d.ts.map +1 -0
- package/dist/primitives/unbind.d.ts +3 -0
- package/dist/primitives/unbind.d.ts.map +1 -0
- package/dist/primitives/wait.d.ts +3 -0
- package/dist/primitives/wait.d.ts.map +1 -0
- package/dist/primitives-kit/index.d.ts +3 -0
- package/dist/primitives-kit/index.d.ts.map +1 -0
- package/dist/primitives-kit/process.d.ts +7 -0
- package/dist/primitives-kit/process.d.ts.map +1 -0
- package/dist/primitives-kit/resumable.d.ts +9 -0
- package/dist/primitives-kit/resumable.d.ts.map +1 -0
- package/dist/primitives.d.ts +2 -0
- package/dist/primitives.d.ts.map +1 -0
- package/dist/sigils/bind.d.ts +9 -0
- package/dist/sigils/bind.d.ts.map +1 -0
- package/dist/sigils/branch.d.ts +17 -0
- package/dist/sigils/branch.d.ts.map +1 -0
- package/dist/sigils/cancel.d.ts +7 -0
- package/dist/sigils/cancel.d.ts.map +1 -0
- package/dist/sigils/cede.d.ts +7 -0
- package/dist/sigils/cede.d.ts.map +1 -0
- package/dist/sigils/defer.d.ts +8 -0
- package/dist/sigils/defer.d.ts.map +1 -0
- package/dist/sigils/future.d.ts +7 -0
- package/dist/sigils/future.d.ts.map +1 -0
- package/dist/sigils/halt.d.ts +8 -0
- package/dist/sigils/halt.d.ts.map +1 -0
- package/dist/sigils/index.d.ts +34 -0
- package/dist/sigils/index.d.ts.map +1 -0
- package/dist/sigils/lookup.d.ts +9 -0
- package/dist/sigils/lookup.d.ts.map +1 -0
- package/dist/sigils/poll.d.ts +9 -0
- package/dist/sigils/poll.d.ts.map +1 -0
- package/dist/sigils/receive.d.ts +8 -0
- package/dist/sigils/receive.d.ts.map +1 -0
- package/dist/sigils/self.d.ts +11 -0
- package/dist/sigils/self.d.ts.map +1 -0
- package/dist/sigils/send.d.ts +10 -0
- package/dist/sigils/send.d.ts.map +1 -0
- package/dist/sigils/settle.d.ts +9 -0
- package/dist/sigils/settle.d.ts.map +1 -0
- package/dist/sigils/spawn.d.ts +13 -0
- package/dist/sigils/spawn.d.ts.map +1 -0
- package/dist/sigils/unbind.d.ts +8 -0
- package/dist/sigils/unbind.d.ts.map +1 -0
- package/dist/sigils/wait.d.ts +8 -0
- package/dist/sigils/wait.d.ts.map +1 -0
- package/dist/sigils.cjs +1 -0
- package/dist/sigils.d.ts +2 -0
- package/dist/sigils.d.ts.map +1 -0
- package/dist/sigils.js +125 -0
- package/dist/utils/disposer.d.ts +2 -0
- package/dist/utils/disposer.d.ts.map +1 -0
- package/dist/utils/either.d.ts +2 -0
- package/dist/utils/either.d.ts.map +1 -0
- package/dist/utils/iife.d.ts +2 -0
- package/dist/utils/iife.d.ts.map +1 -0
- package/dist/utils/index.d.ts +8 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/narrow.d.ts +4 -0
- package/dist/utils/narrow.d.ts.map +1 -0
- package/dist/utils/noop.d.ts +2 -0
- package/dist/utils/noop.d.ts.map +1 -0
- package/dist/utils/option.d.ts +2 -0
- package/dist/utils/option.d.ts.map +1 -0
- package/dist/utils/unreachable.d.ts +2 -0
- package/dist/utils/unreachable.d.ts.map +1 -0
- package/dist/utils-O8j9DzUQ.cjs +1 -0
- package/dist/utils-PwEUjNtC.js +327 -0
- package/dist/utils.cjs +1 -0
- package/dist/utils.d.ts +2 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +2 -0
- package/package.json +73 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/internal/fp/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Kind, Kind2, URIS, URIS2 } from 'fp-ts/HKT';
|
|
2
|
+
import { chain } from 'fp-ts';
|
|
3
|
+
export declare namespace lifting {
|
|
4
|
+
interface Lifting<M extends URIS, F extends URIS, C> extends chain.Chain1<M> {
|
|
5
|
+
readonly liftF: <A extends C>(fa: A) => Kind<M, Kind<F, A>>;
|
|
6
|
+
}
|
|
7
|
+
interface Lifting2<M extends URIS2, F extends URIS, C> extends chain.Chain2<M> {
|
|
8
|
+
readonly liftF: <E, A extends C>(fa: A) => Kind2<M, E, Kind<F, A>>;
|
|
9
|
+
}
|
|
10
|
+
function chainF<M extends URIS, F extends URIS, C>(M: Lifting<M, F, C>): <A, B extends C>(f: (a: A) => B) => (ma: Kind<M, A>) => Kind<M, Kind<F, B>>;
|
|
11
|
+
function chainF<M extends URIS2, F extends URIS, C>(M: Lifting2<M, F, C>): <E, A, B extends C>(f: (a: A) => B) => (ma: Kind2<M, E, A>) => Kind2<M, E, Kind<F, B>>;
|
|
12
|
+
function chainFirstF<M extends URIS, _ extends URIS, C>(M: Lifting<M, _, C>): <A, _ extends C>(f: (a: A) => _) => (ma: Kind<M, A>) => Kind<M, A>;
|
|
13
|
+
function chainFirstF<M extends URIS2, _ extends URIS, C>(M: Lifting2<M, _, C>): <E, A, _ extends C>(f: (a: A) => _) => (ma: Kind2<M, E, A>) => Kind2<M, E, A>;
|
|
14
|
+
function bindF<M extends URIS, F extends URIS, C>(M: Lifting<M, F, C>): <N extends string, A, B extends C>(name: Exclude<N, keyof A>, f: (a: A) => B) => (ma: Kind<M, A>) => Kind<M, {
|
|
15
|
+
readonly [K in N | keyof A]: K extends keyof A ? A[K] : Kind<F, B>;
|
|
16
|
+
}>;
|
|
17
|
+
function bindF<M extends URIS2, F extends URIS, C>(M: Lifting2<M, F, C>): <N extends string, E, A, B extends C>(name: Exclude<N, keyof A>, f: (a: A) => B) => (ma: Kind2<M, E, A>) => Kind2<M, E, {
|
|
18
|
+
readonly [K in N | keyof A]: K extends keyof A ? A[K] : Kind<F, B>;
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=lifting.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifting.d.ts","sourceRoot":"","sources":["../../../src/internal/fp/lifting.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Echo, SigilShape } from '../../contracts';
|
|
2
|
+
declare module "fp-ts/HKT" {
|
|
3
|
+
interface URItoKind<A> {
|
|
4
|
+
readonly [sigil.URI]: A extends SigilShape ? Echo<A> : unknown;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export declare namespace sigil {
|
|
8
|
+
const URI = "Sigil";
|
|
9
|
+
type URI = typeof URI;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=sigil.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sigil.d.ts","sourceRoot":"","sources":["../../../src/internal/fp/sigil.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,QAAQ,WAAW,CAAC;IACzB,UAAU,SAAS,CAAC,CAAC;QACnB,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;KAChE;CACF;AAGD,yBAAiB,KAAK,CAAC;IACd,MAAM,GAAG,UAAU,CAAC;IAC3B,KAAY,GAAG,GAAG,OAAO,GAAG,CAAC;CAC9B"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { SigilShape, Wisp } from '../../contracts';
|
|
2
|
+
import { applicative, apply, either, functor, monad, pointed, chain as fpChain, fromIO as fpFromIO } from 'fp-ts';
|
|
3
|
+
import { lifting } from './lifting';
|
|
4
|
+
import { sigil } from './sigil';
|
|
5
|
+
declare module "fp-ts/HKT" {
|
|
6
|
+
interface URItoKind2<E, A> {
|
|
7
|
+
readonly [wispEither.URI]: wispEither.WispEither<E, A>;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export declare namespace wispEither {
|
|
11
|
+
const URI = "WispEither";
|
|
12
|
+
type URI = typeof URI;
|
|
13
|
+
type WispEither<E, A> = Wisp<either.Either<E, A>>;
|
|
14
|
+
const left: <E, A = never>(e: E) => Wisp<either.Either<E, A>>;
|
|
15
|
+
const right: <A, E = never>(a: A) => Wisp<either.Either<E, A>>;
|
|
16
|
+
const map: <A, B>(f: (a: A) => B) => <E>(fa: Wisp<either.Either<E, A>>) => Wisp<either.Either<E, B>>;
|
|
17
|
+
const ap: <E, A>(fa: Wisp<either.Either<E, A>>) => <B>(fab: Wisp<either.Either<E, (a: A) => B>>) => Wisp<either.Either<E, B>>;
|
|
18
|
+
const chain: <A, E, B>(f: (a: A) => Wisp<either.Either<E, B>>) => (ma: Wisp<either.Either<E, A>>) => Wisp<either.Either<E, B>>;
|
|
19
|
+
const leftWisp: <E, A = never>(fe: Wisp<E>) => Wisp<either.Either<E, A>>;
|
|
20
|
+
const rightWisp: <A, E = never>(fa: Wisp<A>) => Wisp<either.Either<E, A>>;
|
|
21
|
+
const Pointed: pointed.Pointed2<URI>;
|
|
22
|
+
const Functor: functor.Functor2<URI>;
|
|
23
|
+
const Apply: apply.Apply2<URI>;
|
|
24
|
+
const Applicative: applicative.Applicative2<URI>;
|
|
25
|
+
const Chain: fpChain.Chain2<URI>;
|
|
26
|
+
const Monad: monad.Monad2<URI>;
|
|
27
|
+
const Lifting: lifting.Lifting2<URI, sigil.URI, SigilShape>;
|
|
28
|
+
const FromIO: fpFromIO.FromIO2<URI>;
|
|
29
|
+
const bind: <N extends string, A, E, B>(name: Exclude<N, keyof A>, f: (a: A) => WispEither<E, B>) => (ma: WispEither<E, A>) => WispEither<E, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B; }>;
|
|
30
|
+
const chainFirst: <A, E, _>(f: (a: A) => WispEither<E, _>) => (first: WispEither<E, A>) => WispEither<E, A>;
|
|
31
|
+
const sequence: <E, A>(ta: readonly WispEither<E, A>[]) => WispEither<E, readonly A[]>;
|
|
32
|
+
const liftF: <E, A extends SigilShape>(fa: A) => WispEither<E, A extends SigilShape ? import("#/contracts").Echo<A> : unknown>;
|
|
33
|
+
const bindF: <N extends string, E, A, B extends SigilShape>(name: Exclude<N, keyof A>, f: (a: A) => B) => (ma: WispEither<E, A>) => WispEither<E, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B extends SigilShape ? import("#/contracts").Echo<B> : unknown; }>;
|
|
34
|
+
const chainF: <E, A, B extends SigilShape>(f: (a: A) => B) => (ma: WispEither<E, A>) => WispEither<E, B extends SigilShape ? import("#/contracts").Echo<B> : unknown>;
|
|
35
|
+
const chainFirstF: <E, A, _ extends SigilShape>(f: (a: A) => _) => (ma: WispEither<E, A>) => WispEither<E, A>;
|
|
36
|
+
const fromIO: <A, E>(fa: import("fp-ts/lib/IO").IO<A>) => WispEither<E, A>;
|
|
37
|
+
const chainFirstIOK: <A, B>(f: (a: A) => import("fp-ts/lib/IO").IO<B>) => <E>(first: WispEither<E, A>) => WispEither<E, A>;
|
|
38
|
+
const chainIOK: <A, B>(f: (a: A) => import("fp-ts/lib/IO").IO<B>) => <E>(first: WispEither<E, A>) => WispEither<E, B>;
|
|
39
|
+
const alt: <E, A>(second: import("fp-ts/function").LazyArg<Wisp<either.Either<E, A>>>) => (first: Wisp<either.Either<E, A>>) => Wisp<either.Either<E, A>>;
|
|
40
|
+
const bimap: <E, G, A, B>(f: (e: E) => G, g: (a: A) => B) => (self: Wisp<either.Either<E, A>>) => Wisp<either.Either<G, B>>;
|
|
41
|
+
const chainNullableK: <E>(e: E) => <A, B>(f: (a: A) => B | null | undefined) => (ma: Wisp<either.Either<E, A>>) => Wisp<either.Either<E, NonNullable<B>>>;
|
|
42
|
+
const fromNullable: <E>(e: E) => <A>(a: A) => Wisp<either.Either<E, NonNullable<A>>>;
|
|
43
|
+
const getOrElse: <E, A>(onLeft: (e: E) => Wisp<A>) => (ma: Wisp<either.Either<E, A>>) => Wisp<A>;
|
|
44
|
+
const mapLeft: <E, G>(f: (e: E) => G) => <A>(self: Wisp<either.Either<E, A>>) => Wisp<either.Either<G, A>>;
|
|
45
|
+
const match: <E, B, A>(onLeft: (e: E) => B, onRight: (a: A) => B) => (ma: Wisp<either.Either<E, A>>) => Wisp<B>;
|
|
46
|
+
const matchE: <E, B, A>(onLeft: (e: E) => Wisp<B>, onRight: (a: A) => Wisp<B>) => (ma: Wisp<either.Either<E, A>>) => Wisp<B>;
|
|
47
|
+
const orElse: <E1, E2, A>(onLeft: (e: E1) => Wisp<either.Either<E2, A>>) => (ma: Wisp<either.Either<E1, A>>) => Wisp<either.Either<E2, A>>;
|
|
48
|
+
const orElseFirst: <E, B>(onLeft: (e: E) => Wisp<either.Either<E, B>>) => <A>(ma: Wisp<either.Either<E, A>>) => Wisp<either.Either<E, A>>;
|
|
49
|
+
const orLeft: <E1, E2>(onLeft: (e: E1) => Wisp<E2>) => <A>(fa: Wisp<either.Either<E1, A>>) => Wisp<either.Either<E2, A>>;
|
|
50
|
+
const swap: <E, A>(ma: Wisp<either.Either<E, A>>) => Wisp<either.Either<A, E>>;
|
|
51
|
+
const toUnion: <E, A>(fa: Wisp<either.Either<E, A>>) => Wisp<E | A>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=wisp-either.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wisp-either.d.ts","sourceRoot":"","sources":["../../../src/internal/fp/wisp-either.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,EAAW,KAAK,IAAI,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAiB,MAAM,OAAO,CAAC;AAErF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,QAAQ,WAAW,CAAC;IACzB,UAAU,UAAU,CAAC,CAAC,EAAE,CAAC;QACvB,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KACxD;CACF;AAGD,yBAAiB,UAAU,CAAC;IACnB,MAAM,GAAG,eAAe,CAAC;IAChC,KAAY,GAAG,GAAG,OAAO,GAAG,CAAC;IAE7B,KAAY,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAElD,MAAM,IAAI,mDAA6B,CAAC;IACxC,MAAM,KAAK,mDAA8B,CAAC;IAE1C,MAAM,GAAG,2FAA4B,CAAC;IACtC,MAAM,EAAE,qHAAyB,CAAC;IAClC,MAAM,KAAK,mHAA4B,CAAC;IAExC,MAAM,QAAQ,0DAA8B,CAAC;IAC7C,MAAM,SAAS,0DAA+B,CAAC;IAE/C,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAGzC,CAAC;IAEK,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAGzC,CAAC;IAEK,MAAM,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAInC,CAAC;IAEK,MAAM,WAAW,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,CAKrD,CAAC;IAEK,MAAM,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAKrC,CAAC;IAEK,MAAM,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAMnC,CAAC;IAEK,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,UAAU,CAMhE,CAAC;IAEK,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAGxC,CAAC;IAEK,MAAM,IAAI,kMAAsB,CAAC;IACjC,MAAM,UAAU,2FAA4B,CAAC;IAE7C,MAAM,QAAQ,wEAAsC,CAAC;IAErD,MAAQ,KAAK,mHAAY,CAAC;IAC1B,MAAM,KAAK,mQAAyB,CAAC;IACrC,MAAM,MAAM,yJAA0B,CAAC;IACvC,MAAM,WAAW,4FAA+B,CAAC;IAEjD,MAAQ,MAAM,8DAAW,CAAC;IAC1B,MAAM,aAAa,uGAAwC,CAAC;IAC5D,MAAM,QAAQ,uGAAmC,CAAC;IAElD,MAAM,GAAG,gJAA0B,CAAC;IACpC,MAAM,KAAK,gHAA4B,CAAC;IACxC,MAAM,cAAc,qIAAqC,CAAC;IAC1D,MAAM,YAAY,kEAAqC,CAAC;IACxD,MAAM,SAAS,iFAAgC,CAAC;IAChD,MAAM,OAAO,6FAAgC,CAAC;IAC9C,MAAM,KAAK,oGAA4B,CAAC;IACxC,MAAM,MAAM,gHAA6B,CAAC;IAC1C,MAAM,MAAM,8HAA6B,CAAC;IAC1C,MAAM,WAAW,wHAAkC,CAAC;IACpD,MAAM,MAAM,4GAA6B,CAAC;IAC1C,MAAM,IAAI,oEAA6B,CAAC;IACxC,MAAM,OAAO,sDAAgC,CAAC;CACtD"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { SigilShape, Wisp } from '../../contracts';
|
|
2
|
+
import { applicative, apply, functor, monad, option, pointed, chain as fpChain, fromIO as fpFromIO } from 'fp-ts';
|
|
3
|
+
import { lifting } from './lifting';
|
|
4
|
+
import { sigil } from './sigil';
|
|
5
|
+
declare module "fp-ts/HKT" {
|
|
6
|
+
interface URItoKind<A> {
|
|
7
|
+
readonly [wispOption.URI]: wispOption.WispOption<A>;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export declare namespace wispOption {
|
|
11
|
+
const URI = "WispOption";
|
|
12
|
+
type URI = typeof URI;
|
|
13
|
+
type WispOption<A> = Wisp<option.Option<A>>;
|
|
14
|
+
const some: <A>(a: A) => Wisp<option.Option<A>>;
|
|
15
|
+
const map: <A, B>(f: (a: A) => B) => (fa: Wisp<option.Option<A>>) => Wisp<option.Option<B>>;
|
|
16
|
+
const ap: <A>(fa: Wisp<option.Option<A>>) => <B>(fab: Wisp<option.Option<(a: A) => B>>) => Wisp<option.Option<B>>;
|
|
17
|
+
const chain: <A, B>(f: (a: A) => Wisp<option.Option<B>>) => (ma: Wisp<option.Option<A>>) => Wisp<option.Option<B>>;
|
|
18
|
+
const fromWisp: <A>(ma: Wisp<A>) => Wisp<option.Option<A>>;
|
|
19
|
+
const Pointed: pointed.Pointed1<URI>;
|
|
20
|
+
const Functor: functor.Functor1<URI>;
|
|
21
|
+
const Apply: apply.Apply1<URI>;
|
|
22
|
+
const Applicative: applicative.Applicative1<URI>;
|
|
23
|
+
const Chain: fpChain.Chain1<URI>;
|
|
24
|
+
const Monad: monad.Monad1<URI>;
|
|
25
|
+
const Lifting: lifting.Lifting<URI, sigil.URI, SigilShape>;
|
|
26
|
+
const FromIO: fpFromIO.FromIO1<URI>;
|
|
27
|
+
const bind: <N extends string, A, B>(name: Exclude<N, keyof A>, f: (a: A) => WispOption<B>) => (ma: WispOption<A>) => WispOption<{ readonly [K in N | keyof A]: K extends keyof A ? A[K] : B; }>;
|
|
28
|
+
const chainFirst: <A, _>(f: (a: A) => WispOption<_>) => (first: WispOption<A>) => WispOption<A>;
|
|
29
|
+
const sequence: <A>(ta: readonly WispOption<A>[]) => WispOption<readonly A[]>;
|
|
30
|
+
const liftF: <A extends SigilShape>(fa: A) => WispOption<A extends SigilShape ? import("#/contracts").Echo<A> : unknown>;
|
|
31
|
+
const bindF: <N extends string, A, B extends SigilShape>(name: Exclude<N, keyof A>, f: (a: A) => B) => (ma: WispOption<A>) => WispOption<{ readonly [K in N | keyof A]: K extends keyof A ? A[K] : B extends SigilShape ? import("#/contracts").Echo<B> : unknown; }>;
|
|
32
|
+
const chainF: <A, B extends SigilShape>(f: (a: A) => B) => (ma: WispOption<A>) => WispOption<B extends SigilShape ? import("#/contracts").Echo<B> : unknown>;
|
|
33
|
+
const chainFirstF: <A, _ extends SigilShape>(f: (a: A) => _) => (ma: WispOption<A>) => WispOption<A>;
|
|
34
|
+
const fromIO: <A>(fa: import("fp-ts/lib/IO").IO<A>) => WispOption<A>;
|
|
35
|
+
const chainFirstIOK: <A, B>(f: (a: A) => import("fp-ts/lib/IO").IO<B>) => (first: WispOption<A>) => WispOption<A>;
|
|
36
|
+
const chainIOK: <A, B>(f: (a: A) => import("fp-ts/lib/IO").IO<B>) => (first: WispOption<A>) => WispOption<B>;
|
|
37
|
+
const alt: <A>(second: import("fp-ts/function").LazyArg<Wisp<option.Option<A>>>) => (first: Wisp<option.Option<A>>) => Wisp<option.Option<A>>;
|
|
38
|
+
const chainNullableK: <A, B>(f: (a: A) => B | null | undefined) => (ma: Wisp<option.Option<A>>) => Wisp<option.Option<NonNullable<B>>>;
|
|
39
|
+
const chainOptionK: <A, B>(f: (a: A) => option.Option<B>) => (ma: Wisp<option.Option<A>>) => Wisp<option.Option<B>>;
|
|
40
|
+
const fromEither: <A>(e: import("fp-ts/lib/Either").Either<unknown, A>) => Wisp<option.Option<A>>;
|
|
41
|
+
const fromNullable: <A>(a: A) => Wisp<option.Option<NonNullable<A>>>;
|
|
42
|
+
const fromPredicate: {
|
|
43
|
+
<A, B extends A>(refinement: import("fp-ts/lib/Refinement").Refinement<A, B>): (a: A) => Wisp<option.Option<B>>;
|
|
44
|
+
<A>(predicate: import("fp-ts/lib/Predicate").Predicate<A>): <B extends A>(b: B) => Wisp<option.Option<B>>;
|
|
45
|
+
<A>(predicate: import("fp-ts/lib/Predicate").Predicate<A>): (a: A) => Wisp<option.Option<A>>;
|
|
46
|
+
};
|
|
47
|
+
const getOrElse: <A>(onNone: import("fp-ts/function").LazyArg<Wisp<A>>) => (fa: Wisp<option.Option<A>>) => Wisp<A>;
|
|
48
|
+
const match: <B, A>(onNone: () => B, onSome: (a: A) => B) => (ma: Wisp<option.Option<A>>) => Wisp<B>;
|
|
49
|
+
const matchE: <B, A>(onNone: () => Wisp<B>, onSome: (a: A) => Wisp<B>) => (ma: Wisp<option.Option<A>>) => Wisp<B>;
|
|
50
|
+
const zero: <A>() => Wisp<option.Option<A>>;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=wisp-option.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wisp-option.d.ts","sourceRoot":"","sources":["../../../src/internal/fp/wisp-option.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,IAAI,QAAQ,EAA0B,MAAM,OAAO,CAAC;AAErF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,QAAQ,WAAW,CAAC;IACzB,UAAU,SAAS,CAAC,CAAC;QACnB,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;KACrD;CACF;AAGD,yBAAiB,UAAU,CAAC;IACnB,MAAM,GAAG,eAAe,CAAC;IAChC,KAAY,GAAG,GAAG,OAAO,GAAG,CAAC;IAE7B,KAAY,UAAU,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,IAAI,qCAA6B,CAAC;IAExC,MAAM,GAAG,kFAA4B,CAAC;IACtC,MAAM,EAAE,yGAAyB,CAAC;IAClC,MAAM,KAAK,uGAA4B,CAAC;IAExC,MAAM,QAAQ,4CAA8B,CAAC;IAE7C,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAGzC,CAAC;IAEK,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAGzC,CAAC;IAEK,MAAM,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAInC,CAAC;IAEK,MAAM,WAAW,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,CAKrD,CAAC;IAEK,MAAM,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAKrC,CAAC;IAEK,MAAM,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAMnC,CAAC;IAEK,MAAM,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,UAAU,CAM/D,CAAC;IAEK,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAGxC,CAAC;IAEK,MAAM,IAAI,sLAAsB,CAAC;IACjC,MAAM,UAAU,+EAA4B,CAAC;IAE7C,MAAM,QAAQ,+DAAsC,CAAC;IAErD,MAAQ,KAAK,6GAAY,CAAC;IAC1B,MAAM,KAAK,0PAAyB,CAAC;IACrC,MAAM,MAAM,gJAA0B,CAAC;IACvC,MAAM,WAAW,mFAA+B,CAAC;IAEjD,MAAQ,MAAM,wDAAW,CAAC;IAC1B,MAAM,aAAa,8FAAwC,CAAC;IAC5D,MAAM,QAAQ,8FAAmC,CAAC;IAElD,MAAM,GAAG,oIAA0B,CAAC;IACpC,MAAM,cAAc,kHAAqC,CAAC;IAC1D,MAAM,YAAY,iGAAmC,CAAC;IACtD,MAAM,UAAU,iFAAmC,CAAC;IACpD,MAAM,YAAY,kDAAqC,CAAC;IACxD,MAAM,aAAa;;;;KAAsC,CAAC;IAC1D,MAAM,SAAS,mGAAgC,CAAC;IAChD,MAAM,KAAK,yFAA8B,CAAC;IAC1C,MAAM,MAAM,qGAA6B,CAAC;IAC1C,MAAM,IAAI,iCAA6B,CAAC;CAChD"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { SigilShape, Wisp } from '../../contracts';
|
|
2
|
+
import { applicative, apply, functor, monad, pointed, chain as fpChain, fromIO as fpFromIO } from 'fp-ts';
|
|
3
|
+
import { lifting } from './lifting';
|
|
4
|
+
import { sigil } from './sigil';
|
|
5
|
+
declare module "fp-ts/HKT" {
|
|
6
|
+
interface URItoKind<A> {
|
|
7
|
+
readonly [wisp.URI]: Wisp<A>;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export declare namespace wisp {
|
|
11
|
+
const URI = "Wisp";
|
|
12
|
+
type URI = typeof URI;
|
|
13
|
+
const Pointed: pointed.Pointed1<URI>;
|
|
14
|
+
const Functor: functor.Functor1<URI>;
|
|
15
|
+
const Apply: apply.Apply1<URI>;
|
|
16
|
+
const Applicative: applicative.Applicative1<URI>;
|
|
17
|
+
const Chain: fpChain.Chain1<URI>;
|
|
18
|
+
const Monad: monad.Monad1<URI>;
|
|
19
|
+
const Do: import("#/contracts").RestingWisp<null>;
|
|
20
|
+
const Lifting: lifting.Lifting<URI, sigil.URI, SigilShape>;
|
|
21
|
+
const FromIO: fpFromIO.FromIO1<URI>;
|
|
22
|
+
const of: <A>(a: A) => Wisp<A>;
|
|
23
|
+
const map: <A, B>(f: (a: A) => B) => (fa: Wisp<A>) => Wisp<B>;
|
|
24
|
+
const ap: <A>(fa: Wisp<A>) => <B>(fab: Wisp<(a: A) => B>) => Wisp<B>;
|
|
25
|
+
const chain: <A, B>(f: (a: A) => Wisp<B>) => (fa: Wisp<A>) => Wisp<B>;
|
|
26
|
+
const bind: <N extends string, A, B>(name: Exclude<N, keyof A>, f: (a: A) => Wisp<B>) => (ma: Wisp<A>) => Wisp<{ readonly [K in N | keyof A]: K extends keyof A ? A[K] : B; }>;
|
|
27
|
+
const chainFirst: <A, _>(f: (a: A) => Wisp<_>) => (first: Wisp<A>) => Wisp<A>;
|
|
28
|
+
const sequence: <A>(ta: readonly Wisp<A>[]) => Wisp<readonly A[]>;
|
|
29
|
+
const liftF: <A extends SigilShape>(fa: A) => Wisp<A extends SigilShape ? import("#/contracts").Echo<A> : unknown>;
|
|
30
|
+
const bindF: <N extends string, A, B extends SigilShape>(name: Exclude<N, keyof A>, f: (a: A) => B) => (ma: Wisp<A>) => Wisp<{ readonly [K in N | keyof A]: K extends keyof A ? A[K] : B extends SigilShape ? import("#/contracts").Echo<B> : unknown; }>;
|
|
31
|
+
const chainF: <A, B extends SigilShape>(f: (a: A) => B) => (ma: Wisp<A>) => Wisp<B extends SigilShape ? import("#/contracts").Echo<B> : unknown>;
|
|
32
|
+
const chainFirstF: <A, _ extends SigilShape>(f: (a: A) => _) => (ma: Wisp<A>) => Wisp<A>;
|
|
33
|
+
const fromIO: <A>(fa: import("fp-ts/lib/IO").IO<A>) => Wisp<A>;
|
|
34
|
+
const chainFirstIOK: <A, B>(f: (a: A) => import("fp-ts/lib/IO").IO<B>) => (first: Wisp<A>) => Wisp<A>;
|
|
35
|
+
const chainIOK: <A, B>(f: (a: A) => import("fp-ts/lib/IO").IO<B>) => (first: Wisp<A>) => Wisp<B>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=wisp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wisp.d.ts","sourceRoot":"","sources":["../../../src/internal/fp/wisp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,IAAI,QAAQ,EAA2B,MAAM,OAAO,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,QAAQ,WAAW,CAAC;IACzB,UAAU,SAAS,CAAC,CAAC;QACnB,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;KAC9B;CACF;AAGD,yBAAiB,IAAI,CAAC;IACb,MAAM,GAAG,SAAS,CAAC;IAC1B,KAAY,GAAG,GAAG,OAAO,GAAG,CAAC;IAEtB,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAGzC,CAAC;IAEK,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAMzC,CAAC;IAEK,MAAM,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAQnC,CAAC;IAEK,MAAM,WAAW,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,CAKrD,CAAC;IAEK,MAAM,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAQrC,CAAC;IAEK,MAAM,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAMnC,CAAC;IAEK,MAAM,EAAE,yCAAoB,CAAC;IAE7B,MAAM,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,UAAU,CAM/D,CAAC;IAEK,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAGxC,CAAC;IAEK,MAAQ,EAAE,sBAAY,CAAC;IAEvB,MAAM,GAAG,oDAAwB,CAAC;IAClC,MAAM,EAAE,4DAAqB,CAAC;IAC9B,MAAM,KAAK,0DAAwB,CAAC;IAEpC,MAAM,IAAI,oKAAsB,CAAC;IACjC,MAAM,UAAU,6DAA4B,CAAC;IAE7C,MAAM,QAAQ,mDAAsC,CAAC;IACrD,MAAQ,KAAK,uGAAY,CAAC;IAC1B,MAAM,KAAK,8OAAyB,CAAC;IACrC,MAAM,MAAM,oIAA0B,CAAC;IACvC,MAAM,WAAW,uEAA+B,CAAC;IAEjD,MAAQ,MAAM,kDAAW,CAAC;IAC1B,MAAM,aAAa,kFAAwC,CAAC;IAC5D,MAAM,QAAQ,kFAAmC,CAAC;CAC1D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interpreter/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,mBAAmB,gBAAgB,CAAC;AACpC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ContextKey, FutureKey, FutureResult, FutureSettleKey, ProcessRef, Ritual, ScopeRef, Suppressor } from '../contracts';
|
|
2
|
+
import { FutureSettler } from './runtime-future';
|
|
3
|
+
import { ScopeDescriptor } from '../sigils';
|
|
4
|
+
import { option } from 'fp-ts';
|
|
5
|
+
import { Disposer } from '../utils';
|
|
6
|
+
import { Failure } from '../failures';
|
|
7
|
+
import { ProcessStep } from './process-step';
|
|
8
|
+
import { ScopeZone } from './scope-zone';
|
|
9
|
+
import { TaggedUnion } from 'type-fest';
|
|
10
|
+
export declare class Interpreter {
|
|
11
|
+
#private;
|
|
12
|
+
private readonly entry;
|
|
13
|
+
private readonly zoneRoot;
|
|
14
|
+
static create(entry: Ritual<unknown>, zone: ScopeZone): Interpreter;
|
|
15
|
+
step<Relic>(process: ProcessRef<Relic>, suppressor: Suppressor): ProcessStep<Relic>;
|
|
16
|
+
spawn<Relic>(scope: ScopeRef<unknown>, worker: Ritual<Relic>, suppressor: Suppressor): ProcessRef<Relic>;
|
|
17
|
+
lookup<Value>(scope: ScopeRef<unknown>, contextKey: ContextKey<Value>): option.Option<Value>;
|
|
18
|
+
poll<Result>(future: FutureKey<Result> | FutureSettleKey<Result>): option.Option<FutureResult<Result>>;
|
|
19
|
+
wait<Result>(future: FutureKey<Result> | FutureSettleKey<Result>, onSettled: FutureSettler<Result>): Disposer;
|
|
20
|
+
forceFailed(scope: ScopeRef<unknown>, failure: Failure, suppressor: Suppressor): void;
|
|
21
|
+
scopeState(scope: ScopeRef<unknown>): ScopeState;
|
|
22
|
+
processState(process: ProcessRef<unknown>): ProcessState;
|
|
23
|
+
scope(process: ProcessRef<unknown>): ScopeRef<unknown>;
|
|
24
|
+
get scopeRoot(): ScopeRef<void>;
|
|
25
|
+
get processRoot(): ProcessRef<void>;
|
|
26
|
+
get isClosed(): boolean;
|
|
27
|
+
protected constructor(entry: Ritual<unknown>, zoneRoot: ScopeZone);
|
|
28
|
+
protected scopeBranch(scope: ScopeRef<unknown>, entry: Ritual<unknown>, descriptor: ScopeDescriptor, zone: ScopeZone, suppressor: Suppressor): ScopeRef<unknown>;
|
|
29
|
+
protected initialize(): void;
|
|
30
|
+
}
|
|
31
|
+
export type ScopeState = TaggedUnion<"status", {
|
|
32
|
+
closed: ScopeInfo;
|
|
33
|
+
closing: ScopeInfo;
|
|
34
|
+
open: ScopeInfo;
|
|
35
|
+
}>;
|
|
36
|
+
export type ProcessState = TaggedUnion<"status", {
|
|
37
|
+
closed: {};
|
|
38
|
+
open: {
|
|
39
|
+
readonly activity: "running" | "waiting";
|
|
40
|
+
};
|
|
41
|
+
}>;
|
|
42
|
+
export interface ScopeInfo extends Record<string, unknown> {
|
|
43
|
+
readonly children: readonly ScopeRef<unknown>[];
|
|
44
|
+
readonly descriptor: ScopeDescriptor;
|
|
45
|
+
readonly parent: ScopeRef<unknown> | null;
|
|
46
|
+
readonly zone: ScopeZone;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=interpreter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../src/interpreter/interpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FutureResult } from '../contracts';
|
|
2
|
+
import { TaggedUnion } from 'type-fest';
|
|
3
|
+
export type ProcessStep<Relic> = TaggedUnion<"disposition", {
|
|
4
|
+
waiting: {};
|
|
5
|
+
ceded: {};
|
|
6
|
+
interpreted: {};
|
|
7
|
+
resonated: {};
|
|
8
|
+
exited: {
|
|
9
|
+
readonly result: FutureResult<Relic>;
|
|
10
|
+
};
|
|
11
|
+
}>;
|
|
12
|
+
export type ProcessStepDisposition = ProcessStep<unknown>["disposition"];
|
|
13
|
+
export type ProcessStepOf<Relic, Disposition extends ProcessStepDisposition> = Extract<ProcessStep<Relic>, {
|
|
14
|
+
readonly disposition: Disposition;
|
|
15
|
+
}>;
|
|
16
|
+
export declare function processWaitingStep<Relic>(): ProcessStepOf<Relic, "waiting">;
|
|
17
|
+
export declare function processCededStep<Relic>(): ProcessStepOf<Relic, "ceded">;
|
|
18
|
+
export declare function processInterpretedStep<Relic>(): ProcessStepOf<Relic, "interpreted">;
|
|
19
|
+
export declare function processResonatedStep<Relic>(): ProcessStepOf<Relic, "resonated">;
|
|
20
|
+
export declare function processExitedStep<Relic>(result: FutureResult<Relic>): ProcessStepOf<Relic, "exited">;
|
|
21
|
+
//# sourceMappingURL=process-step.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-step.d.ts","sourceRoot":"","sources":["../../src/interpreter/process-step.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,MAAM,WAAW,CAAC,KAAK,IAAI,WAAW,CAC1C,aAAa,EACb;IACE,OAAO,EAAE,EAAE,CAAC;IACZ,KAAK,EAAE,EAAE,CAAC;IACV,WAAW,EAAE,EAAE,CAAC;IAChB,SAAS,EAAE,EAAE,CAAC;IACd,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA;KAAE,CAAC;CAClD,CACF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC;AAEzE,MAAM,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,SAAS,sBAAsB,IAAI,OAAO,CACpF,WAAW,CAAC,KAAK,CAAC,EAClB;IAAE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;CAAE,CACtC,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAE3E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAEvE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAEnF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,CAE/E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EACrC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,GAC1B,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAEhC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FutureHandle, FutureKey, FutureResult, FutureSettleKey, KEY_TOKEN, Suppressor } from '../contracts';
|
|
2
|
+
import { Disposer } from '../utils';
|
|
3
|
+
import { option } from 'fp-ts';
|
|
4
|
+
export declare class RuntimeFuture<out Result> implements FutureKey<Result>, FutureSettleKey<Result> {
|
|
5
|
+
#private;
|
|
6
|
+
poll(): option.Option<FutureResult<Result>>;
|
|
7
|
+
wait(onSettled: FutureSettler<Result>): Disposer;
|
|
8
|
+
settle(result: FutureResult<Result>): FutureNotification;
|
|
9
|
+
handle(): FutureHandle<Result>;
|
|
10
|
+
readonly [KEY_TOKEN]: FutureKey<Result>[typeof KEY_TOKEN] & FutureSettleKey<Result>[typeof KEY_TOKEN];
|
|
11
|
+
}
|
|
12
|
+
export type FutureSettler<out Result> = (result: FutureResult<Result>, suppressor: Suppressor) => void;
|
|
13
|
+
export type FutureNotification = (suppressor: Suppressor) => void;
|
|
14
|
+
//# sourceMappingURL=runtime-future.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-future.d.ts","sourceRoot":"","sources":["../../src/interpreter/runtime-future.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,eAAe,EACf,SAAS,EACT,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAG/B,qBAAa,aAAa,CAAC,GAAG,CAAC,MAAM,CAAE,YAAW,SAAS,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;;IACnF,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAQ3C,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,QAAQ;IAahD,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,GAAG,kBAAkB;IAexD,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC;IAKrC,SAAwB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,SAAS,CAAC,GACtE,eAAe,CAAC,MAAM,CAAC,CAAC,OAAO,SAAS,CAAC,CAAC;CAG7C;AAED,MAAM,MAAM,aAAa,CAAC,GAAG,CAAC,MAAM,IAAI,CACtC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,EAC5B,UAAU,EAAE,UAAU,KACnB,IAAI,CAAC;AAEV,MAAM,MAAM,kBAAkB,GAAG,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProcessRef, ScopeRef } from '../../contracts';
|
|
2
|
+
import { RuntimeProcessKeeper } from './keeper';
|
|
3
|
+
import { RuntimeProcessRunner } from './runner';
|
|
4
|
+
export interface RuntimeProcessHandle<Relic> extends ProcessRef<Relic> {
|
|
5
|
+
keeper(): RuntimeProcessKeeper;
|
|
6
|
+
runner(): RuntimeProcessRunner<Relic>;
|
|
7
|
+
readonly scopeRef: ScopeRef<unknown>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=handle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-process/handle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAErD,MAAM,WAAW,oBAAoB,CAAC,KAAK,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IACpE,MAAM,IAAI,oBAAoB,CAAC;IAC/B,MAAM,IAAI,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-process/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ProcessRef, ScopeRef } from '../../contracts';
|
|
2
|
+
import { Failure } from '../../failures';
|
|
3
|
+
import { FutureNotification } from '../runtime-future';
|
|
4
|
+
import { ProcessDescriptor } from '../../sigils';
|
|
5
|
+
import { TaggedUnion } from 'type-fest';
|
|
6
|
+
export interface RuntimeProcessKeeper extends ProcessRef<unknown> {
|
|
7
|
+
stateAs<Status extends RuntimeProcessKeeperStatus>(status: Status): RuntimeProcessKeeperStateOf<Status>;
|
|
8
|
+
resume(input: unknown): void;
|
|
9
|
+
wait(dispose: () => void): void;
|
|
10
|
+
complete(result: unknown): ProcessClosure;
|
|
11
|
+
fail(failure: Failure): ProcessClosure;
|
|
12
|
+
cancel(): ProcessClosure;
|
|
13
|
+
readonly descriptor: ProcessDescriptor;
|
|
14
|
+
readonly isClosed: boolean;
|
|
15
|
+
readonly status: RuntimeProcessKeeperStatus;
|
|
16
|
+
}
|
|
17
|
+
export type RuntimeProcessKeeperStateOf<Status extends RuntimeProcessKeeperStatus> = Extract<RuntimeProcessKeeperState, {
|
|
18
|
+
readonly status: Status;
|
|
19
|
+
}>;
|
|
20
|
+
export interface ProcessClosure {
|
|
21
|
+
readonly notification: FutureNotification;
|
|
22
|
+
readonly cleanups: CleanupTask[];
|
|
23
|
+
}
|
|
24
|
+
export type RuntimeProcessKeeperState = TaggedUnion<"status", {
|
|
25
|
+
canceled: {};
|
|
26
|
+
completed: {
|
|
27
|
+
readonly result: unknown;
|
|
28
|
+
};
|
|
29
|
+
failed: {
|
|
30
|
+
readonly failure: Failure;
|
|
31
|
+
};
|
|
32
|
+
running: {};
|
|
33
|
+
waiting: {};
|
|
34
|
+
}>;
|
|
35
|
+
export type RuntimeProcessKeeperStatus = RuntimeProcessKeeperState["status"];
|
|
36
|
+
export type CleanupTask = (spawn: CleanupSpawner) => void;
|
|
37
|
+
export type CleanupSpawner = (provideProcess: ProvideRuntimeProcess) => void;
|
|
38
|
+
export type ProvideRuntimeProcess = (scopeRef: ScopeRef<unknown>, descriptor: ProcessDescriptor) => RuntimeProcessKeeper;
|
|
39
|
+
//# sourceMappingURL=keeper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keeper.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-process/keeper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,WAAW,oBAAqB,SAAQ,UAAU,CAAC,OAAO,CAAC;IAC/D,OAAO,CAAC,MAAM,SAAS,0BAA0B,EAC/C,MAAM,EAAE,MAAM,GACb,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAAC;IAC1C,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CAAC;IACvC,MAAM,IAAI,cAAc,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;CAC7C;AAED,MAAM,MAAM,2BAA2B,CAAC,MAAM,SAAS,0BAA0B,IAAI,OAAO,CAC1F,yBAAyB,EACzB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAC5B,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC;CAClC;AAED,MAAM,MAAM,yBAAyB,GAAG,WAAW,CACjD,QAAQ,EACR;IACE,QAAQ,EAAE,EAAE,CAAC;IACb,SAAS,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IACxC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACtC,OAAO,EAAE,EAAE,CAAC;IACZ,OAAO,EAAE,EAAE,CAAC;CACb,CACF,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AAE7E,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;AAE1D,MAAM,MAAM,cAAc,GAAG,CAAC,cAAc,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAE7E,MAAM,MAAM,qBAAqB,GAAG,CAClC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAC3B,UAAU,EAAE,iBAAiB,KAC1B,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { CleanupTask, ProcessClosure, RuntimeProcessKeeper } from './keeper';
|
|
2
|
+
import { FutureKey, ProcessRef, REF_TOKEN, Ritual, ScopeRef } from '../../contracts';
|
|
3
|
+
import { ProcessDescriptor, SelfHandle } from '../../sigils';
|
|
4
|
+
import { RuntimeProcessRunner, RuntimeProcessRunnerNext } from './runner';
|
|
5
|
+
import { Failure } from '../../failures';
|
|
6
|
+
import { RuntimeProcessHandle } from './handle';
|
|
7
|
+
import { Stepper } from './stepper';
|
|
8
|
+
import { TaggedUnion } from 'type-fest';
|
|
9
|
+
export declare class RuntimeProcess<Relic> implements RuntimeProcessHandle<Relic>, RuntimeProcessRunner<Relic>, RuntimeProcessKeeper {
|
|
10
|
+
#private;
|
|
11
|
+
private readonly scopeReference;
|
|
12
|
+
private readonly processDescriptor;
|
|
13
|
+
static create<Relic>(scopeRef: ScopeRef<unknown>, worker: Ritual<Relic>, descriptor: ProcessDescriptor): RuntimeProcessHandle<Relic>;
|
|
14
|
+
selfHandle(): SelfHandle;
|
|
15
|
+
runner(): RuntimeProcessRunner<Relic>;
|
|
16
|
+
keeper(): RuntimeProcessKeeper;
|
|
17
|
+
stateAs<Status extends RuntimeProcessStatus>(_status: Status): RuntimeProcessStateOf<Relic, Status>;
|
|
18
|
+
resume(input: unknown): void;
|
|
19
|
+
wait(dispose: () => void): void;
|
|
20
|
+
complete(result: unknown): ProcessClosure;
|
|
21
|
+
fail(failure: Failure): ProcessClosure;
|
|
22
|
+
cancel(): ProcessClosure;
|
|
23
|
+
defer(cleanup: CleanupTask): void;
|
|
24
|
+
get exitFuture(): FutureKey<Relic>;
|
|
25
|
+
get descriptor(): ProcessDescriptor;
|
|
26
|
+
get scopeRef(): ScopeRef<unknown>;
|
|
27
|
+
get status(): RuntimeProcessStatus;
|
|
28
|
+
get isClosed(): boolean;
|
|
29
|
+
readonly [REF_TOKEN]: ProcessRef<Relic>[typeof REF_TOKEN];
|
|
30
|
+
private constructor();
|
|
31
|
+
}
|
|
32
|
+
type RuntimeProcessStateOf<Relic, Status extends RuntimeProcessStatus> = Extract<RuntimeProcessState<Relic>, {
|
|
33
|
+
readonly status: Status;
|
|
34
|
+
}>;
|
|
35
|
+
type RuntimeProcessStatus = RuntimeProcessState<unknown>["status"];
|
|
36
|
+
type RuntimeProcessState<Relic> = TaggedUnion<"status", {
|
|
37
|
+
canceled: {};
|
|
38
|
+
completed: {
|
|
39
|
+
readonly result: Relic;
|
|
40
|
+
};
|
|
41
|
+
failed: {
|
|
42
|
+
readonly failure: Failure;
|
|
43
|
+
};
|
|
44
|
+
running: {
|
|
45
|
+
next(): RuntimeProcessRunnerNext<Relic>;
|
|
46
|
+
readonly stepper: Stepper<Relic>;
|
|
47
|
+
};
|
|
48
|
+
waiting: {
|
|
49
|
+
dispose(): void;
|
|
50
|
+
readonly stepper: Stepper<Relic>;
|
|
51
|
+
};
|
|
52
|
+
}>;
|
|
53
|
+
export {};
|
|
54
|
+
//# sourceMappingURL=process.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-process/process.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Echo, ProcessRef } from '../../contracts';
|
|
2
|
+
import { SelfHandle, Sigil } from '../../sigils';
|
|
3
|
+
import { CleanupTask } from './keeper';
|
|
4
|
+
import { Failure } from '../../failures';
|
|
5
|
+
import { TaggedUnion } from 'type-fest';
|
|
6
|
+
export interface RuntimeProcessRunner<Relic> extends ProcessRef<Relic> {
|
|
7
|
+
defer(cleanup: CleanupTask): void;
|
|
8
|
+
selfHandle(): SelfHandle;
|
|
9
|
+
stateAs<Status extends RuntimeProcessRunnerStatus>(status: Status): RuntimeProcessRunnerStateOf<Relic, Status>;
|
|
10
|
+
readonly isClosed: boolean;
|
|
11
|
+
readonly status: RuntimeProcessRunnerStatus;
|
|
12
|
+
}
|
|
13
|
+
export type RuntimeProcessRunnerStatus = RuntimeProcessRunnerState<unknown>["status"];
|
|
14
|
+
export type RuntimeProcessRunnerStateOf<Relic, Status extends RuntimeProcessRunnerStatus> = Extract<RuntimeProcessRunnerState<Relic>, {
|
|
15
|
+
readonly status: Status;
|
|
16
|
+
}>;
|
|
17
|
+
export type RuntimeProcessRunnerState<Relic> = TaggedUnion<"status", {
|
|
18
|
+
canceled: {};
|
|
19
|
+
completed: {
|
|
20
|
+
readonly result: Relic;
|
|
21
|
+
};
|
|
22
|
+
failed: {
|
|
23
|
+
readonly failure: Failure;
|
|
24
|
+
};
|
|
25
|
+
running: {
|
|
26
|
+
next(): RuntimeProcessRunnerNext<Relic>;
|
|
27
|
+
};
|
|
28
|
+
waiting: {};
|
|
29
|
+
}>;
|
|
30
|
+
export type RuntimeProcessRunnerNext<Relic, SigilItem extends Sigil = Sigil> = TaggedUnion<"kind", {
|
|
31
|
+
echo: {
|
|
32
|
+
accept(echo: Echo<SigilItem>): void;
|
|
33
|
+
readonly sigil: SigilItem;
|
|
34
|
+
};
|
|
35
|
+
relic: {
|
|
36
|
+
readonly relic: Relic;
|
|
37
|
+
};
|
|
38
|
+
resonate: {
|
|
39
|
+
readonly sigil: Sigil;
|
|
40
|
+
};
|
|
41
|
+
}>;
|
|
42
|
+
export type RuntimeProcessNextEcho<SigilItem extends Sigil> = Extract<RuntimeProcessRunnerNext<never, SigilItem>, {
|
|
43
|
+
readonly kind: "echo";
|
|
44
|
+
}>;
|
|
45
|
+
//# sourceMappingURL=runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-process/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,WAAW,oBAAoB,CAAC,KAAK,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IACpE,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAClC,UAAU,IAAI,UAAU,CAAC;IACzB,OAAO,CAAC,MAAM,SAAS,0BAA0B,EAC/C,MAAM,EAAE,MAAM,GACb,2BAA2B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;CAC7C;AAED,MAAM,MAAM,0BAA0B,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEtF,MAAM,MAAM,2BAA2B,CAAC,KAAK,EAAE,MAAM,SAAS,0BAA0B,IAAI,OAAO,CACjG,yBAAyB,CAAC,KAAK,CAAC,EAChC;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAC5B,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,KAAK,IAAI,WAAW,CACxD,QAAQ,EACR;IACE,QAAQ,EAAE,EAAE,CAAC;IACb,SAAS,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAA;KAAE,CAAC;IACtC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACtC,OAAO,EAAE;QAAE,IAAI,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAA;KAAE,CAAC;IACrD,OAAO,EAAE,EAAE,CAAC;CACb,CACF,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,KAAK,EAAE,SAAS,SAAS,KAAK,GAAG,KAAK,IAAI,WAAW,CACxF,MAAM,EACN;IACE,IAAI,EAAE;QACJ,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QACpC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;KAC3B,CAAC;IACF,KAAK,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IACjC,QAAQ,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;CACrC,CACF,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAAC,SAAS,SAAS,KAAK,IAAI,OAAO,CACnE,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,EAC1C;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAC1B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Ritual } from '../../contracts';
|
|
2
|
+
import { RuntimeProcessRunnerNext } from './runner';
|
|
3
|
+
export declare class Stepper<Relic> {
|
|
4
|
+
#private;
|
|
5
|
+
current(): RuntimeProcessRunnerNext<Relic>;
|
|
6
|
+
next(): RuntimeProcessRunnerNext<Relic>;
|
|
7
|
+
constructor(worker: Ritual<Relic>);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=stepper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepper.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-process/stepper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,MAAM,EAAsB,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAKzD,qBAAa,OAAO,CAAC,KAAK;;IACjB,OAAO,IAAI,wBAAwB,CAAC,KAAK,CAAC;IAwB1C,IAAI,IAAI,wBAAwB,CAAC,KAAK,CAAC;gBA8C3B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;CAezC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-scope/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { option } from 'fp-ts';
|
|
2
|
+
import { MessageKey } from '../../contracts';
|
|
3
|
+
export declare class RuntimeMailbox<Receiver> {
|
|
4
|
+
#private;
|
|
5
|
+
tryReceive<Value>(messageKey: MessageKey<Value>): option.Option<Value>;
|
|
6
|
+
enqueueReceiver(receiver: Receiver, messageKey: MessageKey<unknown>): void;
|
|
7
|
+
send<Value>(messageKey: MessageKey<Value>, value: Value): Receiver | null;
|
|
8
|
+
cancelReceiver(receiver: Receiver): void;
|
|
9
|
+
clear(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=runtime-mailbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-mailbox.d.ts","sourceRoot":"","sources":["../../../src/interpreter/runtime-scope/runtime-mailbox.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAiB,MAAM,OAAO,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,qBAAa,cAAc,CAAC,QAAQ;;IAC3B,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;IAuBtE,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI;IAQ1E,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,IAAI;IAyBzE,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAYxC,KAAK,IAAI,IAAI;CA6BrB"}
|