ducpy.utils.convert

Utilities for converting between Python snake_case and Rust/JSON camelCase naming, and for flattening/nesting element structures to match the Rust serde layout.

Attributes

Functions

camel_to_snake(→ str)

snake_to_camel(→ str)

deep_camel_to_snake(→ Any)

deep_snake_to_camel(→ Any)

_flatten_dict(→ dict)

Recursively flatten keys that Rust serde #[serde(flatten)] would flatten.

to_serializable(→ Any)

Convert a value to a JSON-serializable form suitable for the Rust native module.

Module Contents

ducpy.utils.convert._CAMEL_RE1
ducpy.utils.convert._CAMEL_RE2
ducpy.utils.convert.camel_to_snake(name: str) str
ducpy.utils.convert.snake_to_camel(name: str) str
ducpy.utils.convert._SNAKE_TO_CAMEL_OVERRIDES: Dict[str, str]
ducpy.utils.convert._FLATTEN_KEYS
ducpy.utils.convert.deep_camel_to_snake(obj: Any) Any
ducpy.utils.convert.deep_snake_to_camel(obj: Any) Any
ducpy.utils.convert._flatten_dict(d: dict) dict

Recursively flatten keys that Rust serde #[serde(flatten)] would flatten.

ducpy.utils.convert.to_serializable(obj: Any) Any

Convert a value to a JSON-serializable form suitable for the Rust native module.

Handles: - Dataclass instances → dict (recursively) - bytes → list of ints - Nested base/styles/linear_base/stack_element_base → flattened - snake_case keys → camelCase keys