Skip to content

@codesoul-co/hypha-harness / execution-context

模块用法

用于执行该边界的运行时行为。Execution context 模块公开 1 函数、2 接口。

从包入口导入

ts
import {
  createRuntimeExecutionContext,
} from '@codesoul-co/hypha-harness';

import type {
  CreateRuntimeExecutionContextOptions,
  RuntimeExecutionContext,
} from '@codesoul-co/hypha-harness';

使用要点

  • 2 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 1 个函数是该模块的直接操作入口;每个 overload 的必需/可选参数与返回类型均在下方列出。

公共导出

Symbol种类签名说明
createRuntimeExecutionContext函数createRuntimeExecutionContext(options: CreateRuntimeExecutionContextOptions): RuntimeExecutionContextCreate Runtime Execution Context 函数,提供 1 个公开调用签名;参数与返回类型见下表。
CreateRuntimeExecutionContextOptions接口interface CreateRuntimeExecutionContextOptionsCreate Runtime Execution Context Options 接口,共包含 15 个公开字段或方法。
RuntimeExecutionContext接口interface RuntimeExecutionContextRuntime Execution Context 接口,共包含 16 个公开字段或方法。

createRuntimeExecutionContext

Create Runtime Execution Context 函数,提供 1 个公开调用签名;参数与返回类型见下表。

  • 种类: 函数
  • 导入: import { createRuntimeExecutionContext } from '@codesoul-co/hypha-harness';
  • 源码模块: execution-context

声明

text
export declare function createRuntimeExecutionContext(options: CreateRuntimeExecutionContextOptions): RuntimeExecutionContext;

调用签名

text
createRuntimeExecutionContext(options: CreateRuntimeExecutionContextOptions): RuntimeExecutionContext

参数

参数类型必需说明
optionsCreateRuntimeExecutionContextOptions必需参数;接受的值由类型列定义。

返回值

  • 类型: RuntimeExecutionContext
  • 说明: 返回值契约由上述类型定义。

CreateRuntimeExecutionContextOptions

Create Runtime Execution Context Options 接口,共包含 15 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { CreateRuntimeExecutionContextOptions } from '@codesoul-co/hypha-harness';
  • 源码模块: execution-context

声明

text
export interface CreateRuntimeExecutionContextOptions {
    scope: RuntimeScope;
    principal: RuntimePrincipal;
    run: RuntimeRun;
    snapshot: FSMSnapshot;
    process: FSMProcessSpec;
    attempt: number;
    runLease: RunLeaseAuthorization;
    abortSignal: AbortSignal;
    determinismStore: RuntimeDeterminismStore;
    eventCommitPort: RuntimeEventCommitPort;
    activityDispatchPort: RuntimeActivityDispatchPort;
    resourceCoordinator: RuntimeResourceCoordinator;
    causationId?: string;
    now?: () => string;
    nextId?: (namespace: string) => string;
}

契约成员

成员种类签名说明
abortSignal属性abortSignal: AbortSignal公开属性;类型、只读和可选状态以签名列为准。
activityDispatchPort属性activityDispatchPort: RuntimeActivityDispatchPort公开属性;类型、只读和可选状态以签名列为准。
attempt属性attempt: number公开属性;类型、只读和可选状态以签名列为准。
causationId属性causationId?: string公开属性;类型、只读和可选状态以签名列为准。
determinismStore属性determinismStore: RuntimeDeterminismStore公开属性;类型、只读和可选状态以签名列为准。
eventCommitPort属性eventCommitPort: RuntimeEventCommitPort公开属性;类型、只读和可选状态以签名列为准。
nextId方法nextId?(namespace: string): string公开方法;参数与返回类型以签名列为准。
now方法now?(): string公开方法;参数与返回类型以签名列为准。
principal属性principal: RuntimePrincipal公开属性;类型、只读和可选状态以签名列为准。
process属性process: FSMProcessSpec公开属性;类型、只读和可选状态以签名列为准。
resourceCoordinator属性resourceCoordinator: RuntimeResourceCoordinator公开属性;类型、只读和可选状态以签名列为准。
run属性run: RuntimeRun公开属性;类型、只读和可选状态以签名列为准。
runLease属性runLease: RunLeaseAuthorization公开属性;类型、只读和可选状态以签名列为准。
scope属性scope: RuntimeScope公开属性;类型、只读和可选状态以签名列为准。
snapshot属性snapshot: FSMSnapshot公开属性;类型、只读和可选状态以签名列为准。

RuntimeExecutionContext

Runtime Execution Context 接口,共包含 16 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { RuntimeExecutionContext } from '@codesoul-co/hypha-harness';
  • 源码模块: execution-context

声明

text
export interface RuntimeExecutionContext {
    readonly scope: Readonly<RuntimeScope>;
    readonly principal: Readonly<RuntimePrincipal>;
    readonly run: Readonly<RuntimeRun>;
    readonly snapshot: Readonly<FSMSnapshot>;
    readonly process: Readonly<FSMProcessSpec>;
    readonly state: Readonly<FSMStateSpec>;
    readonly attempt: number;
    readonly fencingToken: number;
    readonly abortSignal: AbortSignal;
    readonly events: RuntimeEventHelper;
    readonly activities: RuntimeActivityHelper;
    readonly transitions: RuntimeTransitionHelper;
    readonly waits: RuntimeWaitHelper;
    readonly resources: RuntimeResourceHelper;
    readonly clock: RuntimeClockHelper;
    readonly ids: RuntimeIdHelper;
}

契约成员

成员种类签名说明
abortSignal属性readonly abortSignal: AbortSignal公开属性;类型、只读和可选状态以签名列为准。
activities属性readonly activities: RuntimeActivityHelper公开属性;类型、只读和可选状态以签名列为准。
attempt属性readonly attempt: number公开属性;类型、只读和可选状态以签名列为准。
clock属性readonly clock: RuntimeClockHelper公开属性;类型、只读和可选状态以签名列为准。
events属性readonly events: RuntimeEventHelper公开属性;类型、只读和可选状态以签名列为准。
fencingToken属性readonly fencingToken: number公开属性;类型、只读和可选状态以签名列为准。
ids属性readonly ids: RuntimeIdHelper公开属性;类型、只读和可选状态以签名列为准。
principal属性readonly principal: Readonly<RuntimePrincipal>公开属性;类型、只读和可选状态以签名列为准。
process属性readonly process: Readonly<FSMProcessSpec>公开属性;类型、只读和可选状态以签名列为准。
resources属性readonly resources: RuntimeResourceHelper公开属性;类型、只读和可选状态以签名列为准。
run属性readonly run: Readonly<RuntimeRun>公开属性;类型、只读和可选状态以签名列为准。
scope属性readonly scope: Readonly<RuntimeScope>公开属性;类型、只读和可选状态以签名列为准。
snapshot属性readonly snapshot: Readonly<FSMSnapshot>公开属性;类型、只读和可选状态以签名列为准。
state属性readonly state: Readonly<FSMStateSpec>公开属性;类型、只读和可选状态以签名列为准。
transitions属性readonly transitions: RuntimeTransitionHelper公开属性;类型、只读和可选状态以签名列为准。
waits属性readonly waits: RuntimeWaitHelper公开属性;类型、只读和可选状态以签名列为准。