Documentation ¶
Overview ¶
Package eval provides evaluation of Ko circuits.
Index ¶
- Constants
- Variables
- func EvalFaculty() eval.Faculty
- func NewEvalRuntimeContext(span *model.Span) *runtime.Context
- func RegisterEvalGate(stub interface{})
- func RegisterEvalGateAt(pkg, name string, stub interface{})
- func RegisterEvalMacro(name string, macro eval.Macro)
- func RegisterEvalPkgMacro(pkg, name string, macro eval.Macro)
- func RegisterNamedEvalGate(name string, stub interface{})
- type EvalBoundary
- type EvalCallMacro
- func (m *EvalCallMacro) Doc() string
- func (m *EvalCallMacro) Help() string
- func (call *EvalCallMacro) Invoke(span *model.Span, arg eval.Arg) (returns eval.Return, effect eval.Effect, err error)
- func (m *EvalCallMacro) Label() string
- func (m *EvalCallMacro) MacroID() string
- func (m *EvalCallMacro) MacroSheathString() *string
- func (m *EvalCallMacro) Splay() tree.Tree
- type EvalCombiner
- type EvalInterpretMacro
- func (m *EvalInterpretMacro) Doc() string
- func (m *EvalInterpretMacro) Help() string
- func (m *EvalInterpretMacro) InterpretFunc() (pkgPath, funcName string)
- func (m *EvalInterpretMacro) Invoke(span *model.Span, arg eval.Arg) (eval.Return, eval.Effect, error)
- func (m *EvalInterpretMacro) InvokePar(span *model.Span, arg eval.Arg) (eval.Return, eval.Effect, error)
- func (m *EvalInterpretMacro) InvokeSeq(span *model.Span, arg eval.Arg) (eval.Return, eval.Effect, error)
- func (m *EvalInterpretMacro) Label() string
- func (m *EvalInterpretMacro) MacroID() string
- func (m *EvalInterpretMacro) MacroSheathString() *string
- func (m *EvalInterpretMacro) Splay() tree.Tree
- type EvalPanic
- type EvalRegistry
- func (r *EvalRegistry) RegisterEvalGate(stub interface{})
- func (r *EvalRegistry) RegisterEvalGateAt(pkg, name string, stub interface{})
- func (r *EvalRegistry) RegisterEvalMacro(name string, macro eval.Macro)
- func (r *EvalRegistry) RegisterEvalPkgMacro(pkg, name string, macro eval.Macro)
- func (r *EvalRegistry) RegisterNamedEvalGate(name string, stub interface{})
- func (r *EvalRegistry) Snapshot() eval.Faculty
- type Evaluate
Constants ¶
const EvalIdiomSrc = `` /* 1114-byte string literal not displayed */
Variables ¶
var EvalIdiomRepo = compileIdiomRepo()
Functions ¶
func EvalFaculty ¶
func RegisterEvalGate ¶
func RegisterEvalGate(stub interface{})
RegisterEvalGate registers an evaluation gate in the default registry with the name and package of the given stub.
func RegisterEvalGateAt ¶
func RegisterEvalGateAt(pkg, name string, stub interface{})
RegisterEvalGateAt registers an evaluation gate in the default registry with given name in the given package.
func RegisterEvalMacro ¶
func RegisterEvalPkgMacro ¶
func RegisterNamedEvalGate ¶
func RegisterNamedEvalGate(name string, stub interface{})
RegisterNamedEvalGate registers an evaluation gate in the default registry with the given name in the package of the given stub.
Types ¶
type EvalBoundary ¶
type EvalBoundary struct{}
type EvalCallMacro ¶
EvalCallMacro is a macro that calls a Gate.
func (*EvalCallMacro) Doc ¶
func (m *EvalCallMacro) Doc() string
Doc returns the usage documentation of the macro
func (*EvalCallMacro) Help ¶
func (m *EvalCallMacro) Help() string
Help returns the a short help message of the macro
func (*EvalCallMacro) Label ¶
func (m *EvalCallMacro) Label() string
func (*EvalCallMacro) MacroID ¶
func (m *EvalCallMacro) MacroID() string
func (*EvalCallMacro) MacroSheathString ¶
func (m *EvalCallMacro) MacroSheathString() *string
func (*EvalCallMacro) Splay ¶
func (m *EvalCallMacro) Splay() tree.Tree
type EvalInterpretMacro ¶
type EvalInterpretMacro struct { Evaluator eval.Evaluator `ko:"name=evaluator"` Func *model.Func `ko:"name=func"` }
func (*EvalInterpretMacro) Doc ¶
func (m *EvalInterpretMacro) Doc() string
func (*EvalInterpretMacro) Help ¶
func (m *EvalInterpretMacro) Help() string
func (*EvalInterpretMacro) InterpretFunc ¶
func (m *EvalInterpretMacro) InterpretFunc() (pkgPath, funcName string)
InterpretFunc communicates to Variety.Disassemble the underlying function identity.
func (*EvalInterpretMacro) Label ¶
func (m *EvalInterpretMacro) Label() string
func (*EvalInterpretMacro) MacroID ¶
func (m *EvalInterpretMacro) MacroID() string
func (*EvalInterpretMacro) MacroSheathString ¶
func (m *EvalInterpretMacro) MacroSheathString() *string
func (*EvalInterpretMacro) Splay ¶
func (m *EvalInterpretMacro) Splay() tree.Tree
type EvalPanic ¶
type EvalRegistry ¶
func NewEvalRegistry ¶
func NewEvalRegistry() *EvalRegistry
func (*EvalRegistry) RegisterEvalGate ¶
func (r *EvalRegistry) RegisterEvalGate(stub interface{})
RegisterEvalGate registers an evaluation gate with the name and package of the given stub.
func (*EvalRegistry) RegisterEvalGateAt ¶
func (r *EvalRegistry) RegisterEvalGateAt(pkg, name string, stub interface{})
RegisterEvalGateAt registers an evaluation gate with given name in the given package.
func (*EvalRegistry) RegisterEvalMacro ¶
func (r *EvalRegistry) RegisterEvalMacro(name string, macro eval.Macro)
func (*EvalRegistry) RegisterEvalPkgMacro ¶
func (r *EvalRegistry) RegisterEvalPkgMacro(pkg, name string, macro eval.Macro)
func (*EvalRegistry) RegisterNamedEvalGate ¶
func (r *EvalRegistry) RegisterNamedEvalGate(name string, stub interface{})
RegisterNamedEvalGate registers an evaluation gate with the given name in the package of the given stub.
func (*EvalRegistry) Snapshot ¶
func (r *EvalRegistry) Snapshot() eval.Faculty