core.registry#
Registry
Module Contents#
Classes#
Registry of plugins. |
|
A (temporary) dummy plugin for testing. |
|
Another (temporary) dummy plugin for testing. |
Functions#
Iterate over all modules in a namespace package. |
Data#
API#
- core.registry.log = None#
- core.registry.iter_namespace(ns_pkg: types.ModuleType) collections.abc.Iterator[pkgutil.ModuleInfo]#
Iterate over all modules in a namespace package.
Specifying the second argument (prefix) to iter_modules makes the returned name an absolute name instead of a relative one. This allows import_module to work without having to do additional modification to the name.
- class core.registry.Registry(selected_plugins: list[str], **kwargs: polyconf.core.model.Plugin)#
Registry of plugins.
Initialization
- discover_plugins(package: types.ModuleType) None#
Discover plugins in a package.
- property discovered_plugins: dict[str, types.ModuleType]#
Return a dictionary of discovered plugins.
- init_plugins(package: types.ModuleType | None = None, **kwargs: Any) None#
Initialize the plugins.
- property available_plugins: list[Callable[[polyconf.core.model.Context], polyconf.core.model.Context]]#
Return a list of available plugins.
- property plugins: list[Callable[[polyconf.core.model.Context], polyconf.core.model.Context]]#
Return a list of active plugins.
- property plugin_map: dict[str, polyconf.core.model.Plugin]#
Return a dictionary of active plugins.
- register_plugin(name: str, plugin: polyconf.core.model.Plugin) None#
Register a plugin.
- resolve(context: polyconf.core.model.Context) polyconf.core.model.Context#
Resolve a context.