bundle.pybind.plugins.base ========================== .. py:module:: bundle.pybind.plugins.base .. autoapi-nested-parse:: Defines PybindPlugin (ABC) Classes ------- .. autoapisummary:: bundle.pybind.plugins.base.PybindPluginSpec bundle.pybind.plugins.base.PybindPluginResolved Module Contents --------------- .. py:class:: PybindPluginSpec Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: apply(module: bundle.pybind.specs.ModuleSpec) -> bundle.pybind.specs.ModuleSpec :abstractmethod: :async: Applies plugin logic to a module specification or a resolved module. This method is asynchronous to allow for I/O operations within plugins. It should return the (potentially modified) module. For immutability, it's recommended to return a new instance if changes are made. .. py:class:: PybindPluginResolved Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: apply(module: bundle.pybind.resolved.ModuleResolved) -> bundle.pybind.resolved.ModuleResolved :abstractmethod: :async: Applies plugin logic to a resolved module. This method is asynchronous to allow for I/O operations within plugins. It should return the (potentially modified) module. For immutability, it's recommended to return a new instance if changes are made.