ports

package
v0.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2026 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionDispatcher

type ActionDispatcher interface {
	Dispatch(req domain.ActionRequest) (domain.ActionResponse, error)
}

ActionDispatcher defines how side-effects are executed. The engine emits requests, and the host implements this interface to handle them.

type GraphLoader

type GraphLoader interface {
	// GetNode retrieves the raw definition of a node by ID.
	// It returns the raw bytes (which the compiler will parse) or an error.
	GetNode(id string) ([]byte, error)

	// ListNodes returns a simplified list of all node IDs available in the graph.
	// This is used for introspection and visualization tools (e.g. 'trellis graph').
	ListNodes() ([]string, error)
}

GraphLoader defines how the engine retrieves node definitions. This allows the storage layer (Loam, FS, Memory) to be decoupled.

type Watchable added in v0.3.2

type Watchable interface {
	// Watch returns a channel that is signaled when the underlying graph changes.
	// It returns a string (the event type, e.g. "reload") or an error.
	Watch(ctx context.Context) (<-chan string, error)
}

Watchable defines an interface for loaders that can notify about backend changes. This is typically used for hot-reload or dev-mode functionality.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL