dlt.common.normalizers.json
DataItemNormalizer Objects
class DataItemNormalizer(abc.ABC, Generic[TNormalizerConfig])
py_type_to_sc_type_map
@property
def py_type_to_sc_type_map() -> Dict[Type[Any], TDataType]
Lookup from Python type to schema type. Override in subclasses.
py_type_to_sc_type
@abc.abstractmethod
def py_type_to_sc_type(t: Type[Any]) -> TDataType
Resolve Python type to schema type including subclass/Enum handling.
can_coerce_type
@abc.abstractmethod
def can_coerce_type(to_type: TDataType, from_type: TDataType) -> bool
Return True if from_type can be coerced to to_type.
coerce_type
@abc.abstractmethod
def coerce_type(to_type: TDataType, from_type: TDataType, value: Any) -> Any
Coerce value from from_type to to_type. Raises ValueError on failure.
SupportsDataItemNormalizer Objects
class SupportsDataItemNormalizer(Protocol)
Expected of modules defining data item normalizer
DataItemNormalizer
A class with a name DataItemNormalizer deriving from normalizers.json.DataItemNormalizer
wrap_in_dict
def wrap_in_dict(label: str, item: Any) -> DictStrAny
Wraps item that is not a dictionary into dictionary that can be json normalized