Documentation
¶
Overview ¶
Package typeregistry implements a simple type registry that maps go types to custom names.
Index ¶
- Variables
- type Registry
- func (r *Registry) GetInterface(name string) (interface{}, error)
- func (r *Registry) GetType(name string) (reflect.Type, error)
- func (r *Registry) GetValue(name string) (reflect.Value, error)
- func (r *Registry) Register(v interface{}) error
- func (r *Registry) RegisterNamed(name string, v interface{}) error
- func (r *Registry) RegisteredNames() []string
- func (r *Registry) Unregister(name string) error
Constants ¶
This section is empty.
Variables ¶
var ( // ErrTypeRegistry is the base typeregistry error. ErrTypeRegistry = errorex.New("typeregistry") // ErrNotFound is returned when a type was not found in the registry. ErrNotFound = ErrTypeRegistry.WrapFormat("entry '%s' not found") // ErrDuplicateEntry is returned when registering a type that is alreday registered. ErrDuplicateEntry = ErrTypeRegistry.WrapFormat("entry '%s' already exists") )
Functions ¶
This section is empty.
Types ¶
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry is a Go type registry.
func (*Registry) GetInterface ¶
GetInterface returns an interface to a new reflect.Value of reflect.Type registered under specified name or an error.
func (*Registry) GetValue ¶
GetValue returns a new reflect.Value of reflect.Type registered under specified name or an error.
func (*Registry) Register ¶
Register registers a reflect.Type of value specified by v under its' reflect.Type name or returns an error.
func (*Registry) RegisterNamed ¶
RegisterNamed registers a reflect.Type of value specified by v under specified name or returns an error.
func (*Registry) RegisteredNames ¶
RegisteredNames returns a slice of registered names.
func (*Registry) Unregister ¶
Unregister unregisters a reflect.Type registered under specified name or returns an error.