reylo-effect-tooling 0.0.0-stage → 0.5.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/README.md +10 -2
- package/dist/esbuild.d.ts +2 -0
- package/dist/esbuild.js +3614 -0
- package/dist/host.d.ts +17 -0
- package/dist/host.js +20 -0
- package/dist/loader.js +3614 -0
- package/dist/mapper.d.ts +1 -0
- package/dist/mapper.js +3850 -0
- package/dist/register.d.ts +1 -0
- package/dist/register.js +5 -0
- package/dist/vite-owner.d.ts +29 -0
- package/dist/vite-owner.js +4236 -0
- package/dist/vite.d.ts +7 -0
- package/dist/vite.js +672 -0
- package/package.json +74 -4
package/dist/host.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as NodeServices from "@effect/platform-node/NodeServices";
|
|
2
|
+
import { Context, Effect, Layer, ManagedRuntime, Semaphore } from "effect";
|
|
3
|
+
declare const EngineLock_base: Context.ServiceClass<EngineLock, "reylo-effect/EngineLock", Semaphore.Semaphore>;
|
|
4
|
+
/**
|
|
5
|
+
* The wasm engine is one mutable memory, so analysis holds this one-permit lock. This module
|
|
6
|
+
* stays external in every bundle, so a process has one lock and one runtime.
|
|
7
|
+
*/
|
|
8
|
+
export declare class EngineLock extends EngineLock_base {
|
|
9
|
+
static readonly layer: Layer.Layer<EngineLock>;
|
|
10
|
+
}
|
|
11
|
+
/** Run `effect` while holding the engine. Sections do not nest: the lock is not reentrant. */
|
|
12
|
+
export declare const exclusive: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R | EngineLock>;
|
|
13
|
+
export type HostServices = EngineLock | NodeServices.NodeServices;
|
|
14
|
+
export declare const HostLayer: Layer.Layer<HostServices>;
|
|
15
|
+
/** The process-wide runtime that bundler hooks, the loader, and the content mapper run on. */
|
|
16
|
+
export declare const host: ManagedRuntime.ManagedRuntime<HostServices, never>;
|
|
17
|
+
export {};
|
package/dist/host.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// src/host.ts
|
|
2
|
+
import * as NodeServices from "@effect/platform-node/NodeServices";
|
|
3
|
+
import { Context, Layer, ManagedRuntime, Semaphore } from "effect";
|
|
4
|
+
var EngineLock = class _EngineLock extends Context.Service()(
|
|
5
|
+
"reylo-effect/EngineLock"
|
|
6
|
+
) {
|
|
7
|
+
static layer = Layer.effect(_EngineLock, Semaphore.make(1));
|
|
8
|
+
};
|
|
9
|
+
var exclusive = (effect) => EngineLock.use((lock) => lock.withPermits(1)(effect));
|
|
10
|
+
var HostLayer = Layer.mergeAll(
|
|
11
|
+
EngineLock.layer,
|
|
12
|
+
NodeServices.layer
|
|
13
|
+
);
|
|
14
|
+
var host = ManagedRuntime.make(HostLayer);
|
|
15
|
+
export {
|
|
16
|
+
EngineLock,
|
|
17
|
+
HostLayer,
|
|
18
|
+
exclusive,
|
|
19
|
+
host
|
|
20
|
+
};
|