Remove custom enum parsing

Python enums can already be parsed out-of-the-box.
This commit is contained in:
Lonami Exo
2022-01-16 12:06:42 +01:00
parent 8c9ee3f731
commit a95393648f
4 changed files with 20 additions and 42 deletions

View File

@@ -129,25 +129,3 @@ class Size(Enum):
Size.ANIMATED: 7,
Size.VIDEO: 6,
}[self]
def _mk_parser(cls):
def parser(value):
if isinstance(value, cls):
return value
elif isinstance(value, str):
for variant in cls:
if value == variant.value:
return variant
raise ValueError(f'unknown {cls.__name__}: {value!r}')
else:
raise TypeError(f'not a valid {cls.__name__}: {type(value).__name__!r}')
return parser
parse_conn_mode = _mk_parser(ConnectionMode)
parse_participant = _mk_parser(Participant)
parse_typing_action = _mk_parser(Action)
parse_photo_size = _mk_parser(Size)