D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
lib64
/
python3.9
/
site-packages
/
gssapi
/
raw
/
_enum_extensions
/
Filename :
__init__.py
back
Copy
from enum import EnumMeta _extra_values = {} def register_value(cl_str, name, value): _extra_values[cl_str] = _extra_values.get(cl_str, {}) _extra_values[cl_str][name] = value class ExtendableEnum(EnumMeta): def __new__(metacl, name, bases, classdict): extra_vals = _extra_values.get(name) if extra_vals is not None: for extra_name, extra_val in list(extra_vals.items()): if extra_name in classdict: raise AttributeError( "Enumeration extensions cannot override existing " "enumeration members") else: classdict[extra_name] = extra_val return super(ExtendableEnum, metacl).__new__(metacl, name, bases, classdict)