registry

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2026 License: MIT Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Named

type Named interface {
	Name() string
}

Named is a constraint for providers that can identify themselves by name.

type Registry

type Registry[T Named] struct {
	// contains filtered or unexported fields
}

Registry is a generic store for named providers. It is not safe for concurrent use; callers that need concurrency should add their own synchronisation.

func New

func New[T Named]() *Registry[T]

New creates an empty Registry.

func (*Registry[T]) Get

func (r *Registry[T]) Get(name string) (T, bool)

Get returns the provider for the given name, or the zero value of T and false when no provider is registered under that name.

func (*Registry[T]) Register

func (r *Registry[T]) Register(provider T)

Register adds or replaces a provider, keyed by its Name().

Jump to

Keyboard shortcuts

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