cadrumo.domain.calculations.registry.prorrata_regime module

Typed projection of the registry-owned IVA prorrata regime vocabulary.

class ProrrataRegimeDefinition(token, description, legal_ref)[source]

Bases: object

One registry-declared prorrata regime and its legal semantics.

Parameters:
token: ProrrataRegime
description: str
legal_ref: str
class ProrrataRegimeCatalogue(definitions, default_regime)[source]

Bases: object

Typed projection of the dated prorrata regime mapping fact.

Parameters:
definitions: tuple[ProrrataRegimeDefinition, ...]
default_regime: ProrrataRegime
property all_regimes: frozenset[ProrrataRegime]

Return every regime token declared by the selected authority.

require(value)[source]

Validate one opaque regime token against the selected authority.

Return type:

ProrrataRegime

Parameters:

value (object)

resolve_prorrata_regime_catalogue(*, effective_date=None, authority=None)[source]

Resolve the dated prorrata regime vocabulary through facts authority.

Return type:

ProrrataRegimeCatalogue

Parameters:
require_prorrata_regime(value, *, effective_date=None, authority=None)[source]

Return one registry-declared opaque regime token or refuse it.

Return type:

ProrrataRegime

Parameters: