Documentation
¶
Index ¶
- func GetOutputReference[G any](result ExecutionRecorder, output Output[G]) *G
- func GetOutputValue[G any](result ExecutionRecorder, output Output[G]) G
- func GetOutputValues[G any](recorder ExecutionRecorder, output []Output[G]) []G
- func TryGetOutputReference[G any](result ExecutionRecorder, output Output[G], fallback *G) *G
- func TryGetOutputValue[G any](result ExecutionRecorder, output Output[G], fallback G) G
- type ArrayValueInputPort
- type ConstOutput
- type Describable
- type ExecutionRecorder
- type ExecutionReport
- type InputPort
- type Named
- type Node
- type NodeState
- type ObservableExecution
- type Output
- type OutputPort
- type Pathed
- type Port
- type SingleValueInputPort
- type StateData
- type Stateful
- type StepTiming
- type Struct
- type StructOutput
- func (so *StructOutput[T]) CaptureError(err error)
- func (so *StructOutput[T]) CaptureTiming(title string, timing time.Duration)
- func (so StructOutput[T]) Description() string
- func (so StructOutput[T]) ExecutionReport() ExecutionReport
- func (so StructOutput[T]) Name() string
- func (so StructOutput[T]) Node() Node
- func (so *StructOutput[T]) Set(v T)
- func (so StructOutput[T]) Type() string
- func (so *StructOutput[T]) Value() T
- func (so StructOutput[T]) Version() int
- type Typed
- type Value
- type VersionData
- type Versioned
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetOutputReference ¶ added in v0.32.0
func GetOutputReference[G any](result ExecutionRecorder, output Output[G]) *G
func GetOutputValue ¶ added in v0.32.0
func GetOutputValue[G any](result ExecutionRecorder, output Output[G]) G
func GetOutputValues ¶ added in v0.32.0
func GetOutputValues[G any](recorder ExecutionRecorder, output []Output[G]) []G
func TryGetOutputReference ¶ added in v0.32.0
func TryGetOutputReference[G any](result ExecutionRecorder, output Output[G], fallback *G) *G
func TryGetOutputValue ¶ added in v0.17.0
func TryGetOutputValue[G any](result ExecutionRecorder, output Output[G], fallback G) G
Types ¶
type ArrayValueInputPort ¶ added in v0.23.0
type ArrayValueInputPort interface {
InputPort
Value() []OutputPort
Add(port OutputPort) error
Remove(port OutputPort) error
}
type ConstOutput ¶ added in v0.25.0
func (ConstOutput[T]) Description ¶ added in v0.25.0
func (co ConstOutput[T]) Description() string
func (ConstOutput[T]) Name ¶ added in v0.25.0
func (co ConstOutput[T]) Name() string
func (ConstOutput[T]) Node ¶ added in v0.25.0
func (co ConstOutput[T]) Node() Node
func (ConstOutput[T]) Type ¶ added in v0.25.0
func (so ConstOutput[T]) Type() string
func (ConstOutput[T]) Value ¶ added in v0.25.0
func (co ConstOutput[T]) Value() T
func (ConstOutput[T]) Version ¶ added in v0.25.0
func (ConstOutput[T]) Version() int
type Describable ¶ added in v0.21.0
type Describable interface {
Description() string
}
type ExecutionRecorder ¶ added in v0.32.0
type ExecutionReport ¶ added in v0.32.0
type ExecutionReport struct {
Errors []string `json:"errors,omitempty"` // Any errors that occurred during execution
Logs []string `json:"logs,omitempty"` // Log messages produced
TotalTime time.Duration `json:"totalTime"` // Total time taken to compute the output
SelfTime *time.Duration `json:"selfTime,omitempty"` // Time spent within the node itself, not counting waiting on other outputs
Steps []StepTiming `json:"steps,omitempty"` // Detailed timing of sub-operations, all sub operation times should result in TotalTime - SelfTime
}
type InputPort ¶ added in v0.23.0
type InputPort interface {
Port
// Remove any connections to this port
Clear()
}
type ObservableExecution ¶ added in v0.32.0
type ObservableExecution interface {
ExecutionReport() ExecutionReport
}
ObservableOutput represents an output whose execution report can be inspected.
type Output ¶ added in v0.11.0
type Output[T any] interface { OutputPort Value() T }
type OutputPort ¶ added in v0.23.0
type SingleValueInputPort ¶ added in v0.23.0
type SingleValueInputPort interface {
InputPort
Value() OutputPort
Set(port OutputPort) error
}
type StepTiming ¶ added in v0.32.0
type StepTiming struct {
Label string `json:"label,omitempty"` // Descriptive name for this step
Duration time.Duration `json:"duration"` // Time taken by this step
Steps []StepTiming `json:"steps,omitempty"` // Detailed timing of sub-operations
}
StepTiming represents the duration of a labeled sub-operation within an execution.
type Struct ¶
type Struct[T any] struct { Data T // contains filtered or unexported fields }
func (Struct[T]) Description ¶ added in v0.21.0
func (*Struct[T]) Outputs ¶ added in v0.20.0
func (s *Struct[T]) Outputs() map[string]OutputPort
type StructOutput ¶ added in v0.20.0
type StructOutput[T any] struct { // contains filtered or unexported fields }
func NewStructOutput ¶ added in v0.23.0
func NewStructOutput[T any](val T) StructOutput[T]
func (*StructOutput[T]) CaptureError ¶ added in v0.32.0
func (so *StructOutput[T]) CaptureError(err error)
func (*StructOutput[T]) CaptureTiming ¶ added in v0.32.0
func (so *StructOutput[T]) CaptureTiming(title string, timing time.Duration)
func (StructOutput[T]) Description ¶ added in v0.25.0
func (so StructOutput[T]) Description() string
func (StructOutput[T]) ExecutionReport ¶ added in v0.32.0
func (so StructOutput[T]) ExecutionReport() ExecutionReport
The report of executing the output function
func (StructOutput[T]) Name ¶ added in v0.20.0
func (so StructOutput[T]) Name() string
func (StructOutput[T]) Node ¶ added in v0.20.0
func (so StructOutput[T]) Node() Node
func (*StructOutput[T]) Set ¶ added in v0.23.0
func (so *StructOutput[T]) Set(v T)
Set the result of the output
func (StructOutput[T]) Type ¶ added in v0.23.0
func (so StructOutput[T]) Type() string
func (*StructOutput[T]) Value ¶ added in v0.20.0
func (so *StructOutput[T]) Value() T
func (StructOutput[T]) Version ¶ added in v0.23.0
func (so StructOutput[T]) Version() int
type Value ¶
type Value[T any] struct { VersionData // contains filtered or unexported fields }
func (*Value[T]) Outputs ¶ added in v0.23.0
func (tn *Value[T]) Outputs() map[string]OutputPort
type VersionData ¶
type VersionData struct {
// contains filtered or unexported fields
}
func (*VersionData) Increment ¶
func (v *VersionData) Increment() int
func (VersionData) Version ¶
func (v VersionData) Version() int
Source Files
¶
Click to show internal directories.
Click to hide internal directories.