opa

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2025 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrEngineNotFound error = &errEngineNotFound{}

ErrEngineNotFound is returned by LookupEngine if no wasm engine was registered by that name.

Functions

func RegisterEngine added in v0.32.0

func RegisterEngine(name string, e Engine)

RegisterEngine registers an evaluation engine by its target name. Note that the "rego" target is always available.

Types

type Engine added in v0.32.0

type Engine interface {
	New() EvalEngine
}

Engine repesents a factory for instances of EvalEngine implementations

func LookupEngine added in v0.32.0

func LookupEngine(name string) (Engine, error)

LookupEngine allows retrieving an engine registered by name

type EvalEngine added in v0.32.0

type EvalEngine interface {
	Init() (EvalEngine, error)
	Entrypoints(context.Context) (map[string]int32, error)
	WithPolicyBytes([]byte) EvalEngine
	WithDataJSON(interface{}) EvalEngine
	Eval(context.Context, EvalOpts) (*Result, error)
	SetData(context.Context, interface{}) error
	SetDataPath(context.Context, []string, interface{}) error
	RemoveDataPath(context.Context, []string) error
	Close()
}

EvalEngine is the interface implemented by an engine used to eval a policy

type EvalOpts

type EvalOpts struct {
	Input                       *interface{}
	Metrics                     metrics.Metrics
	Entrypoint                  int32
	Time                        time.Time
	Seed                        io.Reader
	InterQueryBuiltinCache      cache.InterQueryCache
	InterQueryBuiltinValueCache cache.InterQueryValueCache
	NDBuiltinCache              builtins.NDBCache
	PrintHook                   print.Hook
	Capabilities                *ast.Capabilities
}

EvalOpts define options for performing an evaluation.

type Result

type Result struct {
	Result []byte
}

Result holds the evaluation result.

Jump to

Keyboard shortcuts

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