Skip to content

Latest commit

 

History

History
15 lines (12 loc) · 976 Bytes

strconv.md

File metadata and controls

15 lines (12 loc) · 976 Bytes

firebird.base.strconv

Source: src/firebird/base/strconv.py. Tests: tests/test_strconv.py.

The module provides symmetric conversion between Python values and strings. A Convertor is keyed by type; register_convertor(), register_class(), and update_convertor() manage the registry. convert_to_str() and convert_from_str() are the main operations; has_convertor() and get_convertor() expose registration state. Resolution considers type inheritance, so built-ins include separate registrations for IntEnum and IntFlag in addition to Enum and int.

Built-in convertors are registered during module import for scalar, decimal, UUID, MIME, ZMQ address, boolean, and enum types. config.ListOption and config.DataclassOption depend on this registry for nested values. When adding a supported type, test both directions, invalid input, and interaction with the configuration options that consume it. Registry changes affect process-wide behavior.