コアAPI#

Layer 4: Extend Framework

コアAPIは、コンポーネント契約、グラフ、状態、コンパイル済み計画の公開ファサードです。 通常の拡張では saealib.core から名前を取得し、実装モジュールのパスを直接参照しません。

saealib.core.Component

Declare the contract supplied by a component.

saealib.core.ComponentContract

Declare a component's ports, services, parts, and sub-contracts.

saealib.core.PartSpec

Declare one constructor-held component contract.

saealib.core.AssumptionSet

Map declared assumptions while supplying unaware defaults.

saealib.core.DataSpec

A nominal data kind with bound schema-variable values.

saealib.core.PortContract

Input and output ports for one component role.

saealib.core.PortSpec

A named, directional data contract.

saealib.core.StateContract

Declare state keys read, written, or exported by a component.

saealib.core.LifecycleContract

Declare events consumed by a component.

saealib.core.ExecutionContract

Declare runtime capabilities required or offered by a component.

saealib.core.ComponentGraph

A self-contained graph and its declared entry points.

saealib.core.StructuredGraph

A frozen ComponentGraph retaining structured control regions.

saealib.core.StructuredRegion

Base immutable description of a structured control region.

saealib.core.CompilationRule

Common metadata and application boundary for compiler rules.

saealib.core.StateStore

Own versioned state values and consume each instance after a move.

saealib.core.StateView

Read-only projection of a store for declared state keys.

saealib.core.StatePatch

Describe replacement, in-place, and deletion operations on state.

saealib.core.ExecutablePlan

Immutable result of compilation; execution belongs to a later phase.

saealib.core.ExecutionRuntime

Protocol consumed by a runner; concrete execution is a later unit.

Compiler の公開 import 方針は現在整理中です。 そのため、このページでは saealib.core と saealib.core.compiler のどちらかを標準のimport pathとして断定しません。 コンパイラを使うコードでは、対象リリースの公開APIとリリースノートを確認してください。

グラフの構成値はsaealib.core.compilerから参照できます。

saealib.core.compiler.ComponentNode

Hold a component instance and its compilation-local contract snapshot.

saealib.core.compiler.NodeRef

Identify a graph node, optionally in one of its component roles.

saealib.core.compiler.DataEdge

Connect a source port to a target port.

saealib.core.compiler.ControlEdge

Express control dependency between two graph nodes.

saealib.core.compiler.StateBinding

Bind a component node to an actual state key.

saealib.core.compiler.Diagnostic

A structured compiler finding attached to a contract path.

saealib.core.compiler.ContractPath

An ordered component path with an optional role and port.