8000 Make betterproto.Casing no longer an Enum. · Gobot1234/python-betterproto@f044718 · GitHub
[go: up one dir, main page]

Skip to content

Commit f044718

Browse files
committed
Make betterproto.Casing no longer an Enum.
I remember initially being confused as to how this ever worked as enum members to my knowledge were never callable, however, as it turns out Casing.CAMEL and SNAKE never actually were enum members
1 parent 3fa66f2 commit f044718

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/betterproto/__init__.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,10 @@
3232
)
3333

3434
from dateutil.parser import isoparse
35-
from typing_extensions import Final
35+
from typing_extensions import (
36+
Final,
37+
final,
38+
)
3639

3740
from ._types import T
3841
from ._version import __version__
@@ -144,11 +147,14 @@ def datetime_default_gen() -> datetime:
144147
NAN: Final = "NaN"
145148

146149

147-
class Casing(enum.Enum):
150+
@final
151+
class Casing:
148152
"""Casing constants for serialization."""
149153

150-
CAMEL = camel_case #: A camelCase sterilization function.
151-
SNAKE = snake_case #: A snake_case sterilization function.
154+
__slots__ = ()
155+
156+
CAMEL: Final = camel_case #: A camelCase sterilization function.
157+
SNAKE: Final = snake_case #: A snake_case sterilization function.
152158

153159

154160
PLACEHOLDER: Final[Any] = object()

0 commit comments

Comments
 (0)
0