Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrConflict = errors.New("plugin conflict occurred") ErrNotFound = errors.New("plugin not found") )
View Source
var ErrInvalidSignature = errors.New("invalid signature")
View Source
var ErrMissingDependency = errors.New("missing dependency")
View Source
var MapTypes = map[reflect.Value][]reflect.Type{}
MapTypes maps functions to types they handle specially.
View Source
var Symbols = map[string]map[string]reflect.Value{}
Symbols maps package paths to their exported symbols.
Functions ¶
This section is empty.
Types ¶
type LoadOptions ¶
LoadOptions specifies options for loading a plugin.
type Loader ¶
type Loader struct {
// contains filtered or unexported fields
}
Loader loads plugins from Go source or compiled shared object files.
type Plugin ¶
type Plugin interface {
Name() string
Version() string
Load(ctx context.Context) error
Unload(ctx context.Context) error
}
Plugin defines the interface that dynamic plugins must implement.
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry manages a list of plugins and controls their lifecycle.
func (*Registry) Inject ¶
Inject attempts to inject the given dependency into all registered plugins.
func (*Registry) Unregister ¶
Unregister removes a plugin from the registry.
Source Files
¶
- github_com-gofrs-uuid.go
- github_com-pkg-errors.go
- github_com-siyul-park-uniflow-pkg-driver.go
- github_com-siyul-park-uniflow-pkg-hook.go
- github_com-siyul-park-uniflow-pkg-language.go
- github_com-siyul-park-uniflow-pkg-meta.go
- github_com-siyul-park-uniflow-pkg-node.go
- github_com-siyul-park-uniflow-pkg-packet.go
- github_com-siyul-park-uniflow-pkg-plugin.go
- github_com-siyul-park-uniflow-pkg-port.go
- github_com-siyul-park-uniflow-pkg-process.go
- github_com-siyul-park-uniflow-pkg-runtime.go
- github_com-siyul-park-uniflow-pkg-scheme.go
- github_com-siyul-park-uniflow-pkg-spec.go
- github_com-siyul-park-uniflow-pkg-symbol.go
- github_com-siyul-park-uniflow-pkg-testing.go
- github_com-siyul-park-uniflow-pkg-types.go
- github_com-siyul-park-uniflow-pkg-value.go
- github_com-spf13-afero.go
- loader.go
- plugin.go
- proxy.go
- registry.go
- symbol.go
Click to show internal directories.
Click to hide internal directories.