.. title:: conf lisa.conf ========= .. toctree:: :hidden: Configurable DeferredExcep DeferredValue DelegatedLevelKeyDesc DerivedKeyDesc FilteredDeferredValue KeyDesc KeyDescBase LevelKeyDesc MultiSrcConf MultiSrcConfABC NestedTopLevelKeyDesc SimpleMultiSrcConf TopLevelKeyDesc TopLevelKeyDescBase VariadicLevelKeyDesc ConfigKeyError DeferredValueComputationError KeyComputationRecursionError MissingBaseKeyError TopLevelKeyError .. module:: lisa.conf .. withrefctx:: :module: lisa.conf .. automodule:: lisa.conf :no-index: :no-members: :no-inherited-members: :no-undoc-members: :no-private-members: :no-special-members: .. rubric:: Classes .. list-table:: :align: left * - :class:`~lisa.conf.Configurable` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.Configurable Pair a regular class with a configuration class. * - :class:`~lisa.conf.DeferredExcep` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.DeferredExcep Specialization of :class:`DeferredValue` to lazily raise an exception. * - :class:`~lisa.conf.DeferredValue` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.DeferredValue Wrapper similar to :func:`functools.partial` allowing to defer computation of the value until the key is accessed. * - :class:`~lisa.conf.DelegatedLevelKeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.DelegatedLevelKeyDesc Level key descriptor that imports the keys from another :class:`~lisa.conf.MultiSrcConfABC` subclass. * - :class:`~lisa.conf.DerivedKeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.DerivedKeyDesc Key descriptor describing a key derived from other keys. * - :class:`~lisa.conf.FilteredDeferredValue` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.FilteredDeferredValue Same as :class:`lisa.conf.DeferredValue` except that the given sentinel value will be interpreted as no value . * - :class:`~lisa.conf.KeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.KeyDesc Key descriptor describing a leaf key in the configuration. * - :class:`~lisa.conf.KeyDescBase` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.KeyDescBase Base class for configuration files key descriptor. * - :class:`~lisa.conf.LevelKeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.LevelKeyDesc Key descriptor defining a hierarchical level in the configuration. * - :class:`~lisa.conf.MultiSrcConf` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.MultiSrcConf Base class providing layered configuration management. * - :class:`~lisa.conf.MultiSrcConfABC` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.MultiSrcConfABC Abstract Base Class of :class:`MultiSrcConf`. * - :class:`~lisa.conf.NestedTopLevelKeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.NestedTopLevelKeyDesc Top-level key descriptor, with an arbitrary amount of levels. * - :class:`~lisa.conf.SimpleMultiSrcConf` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.SimpleMultiSrcConf Like :class:`MultiSrcConf`, with a simpler config file. * - :class:`~lisa.conf.TopLevelKeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.TopLevelKeyDesc Regular top-level key descriptor, with only one level. * - :class:`~lisa.conf.TopLevelKeyDescBase` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.TopLevelKeyDescBase Top-level key descriptor, which defines the top-level key to use in the configuration files. * - :class:`~lisa.conf.VariadicLevelKeyDesc` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.VariadicLevelKeyDesc Level key descriptor that allows configuration-source-defined sub-level keys. .. rubric:: Exceptions .. list-table:: :align: left * - :class:`~lisa.conf.ConfigKeyError` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.ConfigKeyError Exception raised when a key is not found in the config instance. * - :class:`~lisa.conf.DeferredValueComputationError` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.DeferredValueComputationError Raised when computing the value of :class:`DeferredValue` lead to an exception. * - :class:`~lisa.conf.KeyComputationRecursionError` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.KeyComputationRecursionError Raised when :meth:`DerivedKeyDesc.compute_val` is reentered while computing a given key on a configuration instance, or when a :class:`DeferredValue` callback is reentered. * - :class:`~lisa.conf.MissingBaseKeyError` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.MissingBaseKeyError Exception raised when a base key needed to compute a derived key is missing. * - :class:`~lisa.conf.TopLevelKeyError` - .. withrefctx:: :module: lisa.conf :class: lisa.conf.TopLevelKeyError Exception raised when no top-level key matches the expected one in the given configuration file.