typedef
FrozenDict
Bases: Dict[Any, Any]
Source code in pyiceberg/typedef.py
IcebergBaseModel
Bases: BaseModel
This class extends the Pydantic BaseModel to set default values by overriding them.
This is because we always want to set by_alias to True. In Python, the dash can't be used in variable names, and this is used throughout the Iceberg spec.
The same goes for exclude_none, if a field is None we want to omit it from serialization, for example, the doc attribute on the NestedField object. Default non-null values will be serialized.
This is recommended by Pydantic: https://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally
Source code in pyiceberg/typedef.py
IcebergRootModel
Bases: RootModel[T]
, Generic[T]
This class extends the Pydantic BaseModel to set default values by overriding them.
This is because we always want to set by_alias to True. In Python, the dash can't be used in variable names, and this is used throughout the Iceberg spec.
The same goes for exclude_none, if a field is None we want to omit it from serialization, for example, the doc attribute on the NestedField object. Default non-null values will be serialized.
This is recommended by Pydantic: https://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally
Source code in pyiceberg/typedef.py
KeyDefaultDict
Bases: Dict[K, V]
Source code in pyiceberg/typedef.py
__missing__(key)
Record
Bases: StructProtocol
Source code in pyiceberg/typedef.py
__eq__(other)
Return the equality of two instances of the Record class.
__getitem__(pos)
__repr__()
Return the string representation of the Record class.
__setitem__(pos, value)
record_fields()
Return values of all the fields of the Record class except those specified in skip_fields.
StructProtocol
Bases: Protocol
A generic protocol used by accessors to get and set at positions of an object.