def load_rule(cls, load, element): children = list(element.children()) if len(children) != 2: raise RuleError(element) keys = set(serialize.load_list(load, children[0])) key_values = serialize.load_dict(load, children[1]) return cls(*keys, **key_values)
def load_rule(cls, load, element): ip = element.get_attr("ip", None) bits = element.get_attr("bits", None) if None in (ip, bits): raise RuleError(element) try: bits = int(bits) except ValueError: raise RuleError(element) keys = None for child in element.children(): keys = serialize.load_list(load, child) return cls(ip, bits, keys)
def load_rule(cls, load, element): children = serialize.load_list(load, element) if len(children) < 1: raise RuleError(element) return cls(*children)