Skip to content

Index

Registry API

Generic thread-safe registry primitives used by the explicit RegistryContext.

Classes

Registry

Registry(*, key_encoder: Callable[[K], str] | None = None)

Thread-safe registry with optional key encoding.

Functions

register
register(key: K, item: T, *, overwrite: bool = False) -> None

Register an item under the given key.

unregister
unregister(key: K) -> None

Unregister an item if present.

get
get(key: K) -> T

Get a registered item by key.

has
has(key: K) -> bool

Check if an item is registered.

list
list() -> list[str]

List registered encoded key names.

decorator
decorator(key: K, *, overwrite: bool = False) -> Callable[[T], T]

Decorator helper to register callables/classes.

freeze
freeze() -> None

Prevent modifications; useful after bootstrapping built-ins.

unfreeze
unfreeze() -> None

Allow modifications again.

clear
clear() -> None

Remove all items from the registry.

items
items() -> Iterable[tuple[str, T]]

Iterate over encoded key, item pairs.