Skip to content

Commit 5979fcb

Browse files
Fix casing typing (#88)
1 parent 9084534 commit 5979fcb

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

src/betterproto2/__init__.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,17 @@ def datetime_default_gen() -> datetime:
129129
class Casing(builtin_enum.Enum):
130130
"""Casing constants for serialization."""
131131

132-
CAMEL = camel_case #: A camelCase sterilization function.
133-
SNAKE = snake_case #: A snake_case sterilization function.
132+
CAMEL = 1
133+
SNAKE = 2
134+
135+
def __call__(self, name: str) -> str:
136+
"""Convert the given name to the casing style."""
137+
if self == Casing.CAMEL:
138+
return camel_case(name)
139+
elif self == Casing.SNAKE:
140+
return snake_case(name)
141+
else:
142+
raise ValueError(f"Unknown casing style: {self}")
134143

135144

136145
@dataclasses.dataclass(frozen=True)

0 commit comments

Comments
 (0)