def narrow(self, composite: Composite) -> None: if not self.narrows: return if len(self.immutable_vars) > 0 and not self.immutables_pass(composite): composite.content = {} else: for period in composite.periods: if not self.temporals_pass(composite, period): del composite.content[period]
def __call__(self, composite: Composite) -> None: content: OrderedDict = OrderedDict() periods: List[str] = sorted(composite.periods) for period in periods: to_sort: Dict = composite.content[period] content[period] = self._sort_within_folder(to_sort, []) if "immutable" in composite.content: content["immutable"] = self._sort_within_folder( composite.content["immutable"], []) composite.content = content