Namespace DotBoxD.Plugins
Namespaces
Classes
- IndexedPredicate
One index-eligible predicate from a lowered
.Where(...)chain: a comparison between an event property (Path) and a compile-time constant (Value). Hosts match Path against their own indexed fields and dispatch through equality/range buckets.
- KernelRpcBinaryCodec
Encodes server extension IR values as a small binary payload: one value-kind byte followed by only the active scalar or child sequence. The IPC layer transports the resulting bytes as an ordinary binary argument, avoiding reflection-bound DTO maps and repeated string kind tags on the wire.
- KernelRpcValueConverter
Converts between the compact server extension wire IR and the sandbox values consumed by installed verified IR. The expected sandbox type is supplied by the server-side installed function signature.
- PluginServer
In-process server-extension convenience surface: register a batch kernel under a service contract, then obtain a typed proxy that invokes it request/response. Plugin-facing remote facades usually expose the same capability from the domain surface they extend.
- PluginSession
Server-side owner of the kernels installed over one connection. Each kernel it installs is tagged with this session as its owner, so another session cannot replace or mutate it. Disposing the session — e.g. from a transport disconnect handler — revokes and unregisters every kernel it owns.
- WireOptions
The host's wiring seam for WireHook(InstalledKernel, WireOptions?) / WireSubscription(InstalledKernel, WireOptions?). Everything mechanical (terminal selection, by-name event resolution, the trusted recompute) is owned by the router; this carries only the genuinely host-specific bits: the remote-local callbacks, the world-owned event index, and an optional classification override.
Structs
- KernelRpcValue
A compact intermediate representation for plugin-defined server extension arguments and results. Scalars carry only their active field, and lists/records carry positional child values matching the verified kernel IR type.
- KernelWireTerminal
The trusted terminal classification for an InstalledKernel: which pipeline terminal to wire and the arguments it needs. Recomputed from verified IR / install-owned metadata — never trusted from the raw manifest — so a single audited Classify(InstalledKernel, Type) replaces the hand-written routing every host used to copy.
- WireCallbacks
The remote-callback delegates a projecting terminal needs: LocalPush for a remote
RunLocalchain and LocalResult for a remoteRegisterLocalchain. Either may benullfor a connection that uses no remote-local terminal; the router only requires the one a kernel's classified terminal actually uses.
- WireResult
The resolved event adapter and terminal used when an installed kernel is wired through WireHook(InstalledKernel, WireOptions?) or WireSubscription(InstalledKernel, WireOptions?).
Interfaces
- IServerExtensionClientRegistry
Adds service-contract lookup for generated domain-style server extension client extensions.
- IServerExtensionWireClient
Client-side transport used by generated server extension proxies. The payload is DotBoxD's compact server extension value IR encoded by KernelRpcBinaryCodec, so transports can carry it as an ordinary binary IPC argument without knowing the plugin-owned service contract.
Enums
- IndexPredicateOperator
The comparison an IndexedPredicate applies, normalized so the event property is always the left operand (
e.Damage >= 5and5 <= e.Damageboth lower to GreaterThanOrEqual).
- KernelRpcValueKind
The compact, transport-neutral value kinds used for server extension IPC payloads.
- KernelWireKind
How an installed kernel's verified terminal must be wired into a hook or subscription pipeline. This is the single classification the host-side router (WireHook(InstalledKernel, WireOptions?) / WireSubscription(InstalledKernel, WireOptions?)) computes once from install-owned + verified metadata, replacing the per-host boolean lattice (is-local-terminal / is-result / is-result-local-terminal) every host used to hand-roll.