def __call__(cls, value, *args, **kw): if isinstance(value, str): found = cls.findByUUID(value) if found != None: return found if isinstance(value, int): found = cls.findByHandle(value) if found != None: return found return EnumMeta.__call__(cls, value, *args, **kw)
def __call__(cls, value, names=None, module=None, typ=None): "look up a value object, either by name or value" if (names is None) and isinstance(value, str): return SymEnumMeta._lookUpByStr(cls, value) else: return EnumMeta.__call__(cls, value, names, module=module, type=typ)
def __call__(cls, value, names=None, module=None, typ=None): "look up a value object, either by name of value," if (names is None) and isinstance(value, str): # map string name to instance, check for external name value = cls.__extNameMap__.toIntName(value) member = cls._member_map_.get(value) if member is None: raise ValueError("'%s' is not a member or alias of %s" % (value, cls.__name__)) else: return member else: return EnumMeta.__call__(cls, value, names, module, typ)
def __call__(cls, value, names=None, *, module=None, qualname=None, type=None, start=1): # noqa return EnumMeta.__call__(cls.__get_dynamic_enum_class( cls.dynamic_enum_dict), value, names=names, module=module, qualname=qualname, type=type, start=start)
def __get_dynamic_enum_class(cls, enum_dict): # avoid enum extension error if accessing via the _empty attribute if (len(cls._member_names_) == 1 and cls._member_names_[0] == DynamicEnumMeta.empty_attr): cls._member_names_.clear() return EnumMeta.__call__(cls, cls.__name__, names=enum_dict)
def __call__(cls, value, *args, **kw): strval = str(value).upper() return EnumMeta.__call__(cls, strval, *args, **kw)