def validate(a_session: session, engine: Engine): """ Determine formula execution order based on "row.xx" references, (or raise exception if cycles detected). """ list_rules = "\n\nValidate Rule Bank" rules_bank = RuleBank() for each_key in rules_bank.orm_objects: validate_formula_dependencies(class_name=each_key) list_rules += rules_bank.__str__() print(list_rules) return True
def compute_formula_execution_order() -> bool: """ Determine formula execution order based on "row.xx" references (dependencies), (or raise exception if cycles detected). """ global version rules_bank = RuleBank() for each_key in rules_bank.orm_objects: compute_formula_execution_order_for_class(class_name=each_key) logic_logger = logging.getLogger("logic_logger") rule_count = 0 logic_logger.debug(f'\nThe following rules have been activated\n') list_rules = rules_bank.__str__() loaded_rules = list(list_rules.split("\n")) for each_rule in loaded_rules: logic_logger.debug(each_rule) rule_count += 1 logic_logger.info(f'Logic Bank {__version__} - {rule_count} rules loaded') return True