Data (objetto.data)
Data.
Data Classes
- class objetto.data.DataMeta(name, bases, dct)
Metaclass for
objetto.data.Data.- Inherits from:
- Features:
Support for
objetto.data.DataAttributedescriptors.
- property _attribute_type
Attribute type.
- Return type
- property _attributes
Attributes mapped by name.
- Return type
- property _attribute_names
Names mapped by attribute.
- Return type
- class objetto.data.Data(**initial)
Data.
- Metaclass:
- Inherits from:
- Inherited by:
- Parameters
initial – Initial values.
- classmethod _get_relationship(location)
Get relationship at location (attribute name).
- classmethod _get_attribute(name)
Get attribute by name.
- _eq(other)
Compare with another data for equality.
- Parameters
other – Another data.
- Returns
True if equal.
- Return type
- _clear()
Clear deletable attribute values.
- Returns
Transformed.
- Return type
- Raises
AttributeError – No deletable attributes.
- _set(name, value)
Set attribute value.
- Parameters
name (str) – Attribute name.
value – Value.
- Returns
Transformed.
- Return type
- Raises
AttributeError – Attribute is not changeable and already has a value.
- _delete(name)
Delete attribute value.
- Parameters
name (str) – Attribute name.
- Returns
Transformed.
- Return type
- Raises
KeyError – Attribute does not exist or has no value.
AttributeError – Attribute is not deletable.
- _update(*args, **kwargs)
Update multiple attribute values. Same parameters as
dict.update().- Returns
Transformed.
- Return type
- Raises
AttributeError – Attribute is not changeable and already has a value.
- classmethod deserialize(serialized, **kwargs)
Deserialize.
- Parameters
serialized – Serialized.
kwargs – Keyword arguments to be passed to the deserializers.
- Returns
Deserialized.
- Return type
- serialize(**kwargs)
Serialize.
- property _state
Internal state.
- Return type
objetto.states.DictState[str, Any]
- class objetto.data.InteractiveData(**initial)
Interactive data.
Data Attributes
- objetto.data.data_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=True, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None)
Make data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
- Returns
Data attribute.
- Return type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_constant_attribute(value, subtypes=False, checked=True, serialized=False, serializer=None, deserializer=None, represented=False, compared=True, finalized=False, abstracted=False, metadata=None)
Make constant data attribute.
- Parameters
value – Constant value.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to type check when overriding this constant attribute.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
- Returns
Constant data attribute.
- Return type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
Auxiliary Data Attributes
- objetto.data.data_dict_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, key_types=(), key_subtypes=False, key_factory=None, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=False, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None, qual_name=None, unique=False)
Make interactive dictionary data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
key_types (str or type or None or tuple[str or type or None]) – Key types.
key_subtypes (bool) – Whether to accept subtypes for the keys.
key_factory (str or collections.abc.Callable or None) – Key factory.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Interactive dictionary data attribute.
- Return type
objetto.data.DataAttribute[objetto.data.InteractiveDictData]
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_protected_dict_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, key_types=(), key_subtypes=False, key_factory=None, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=False, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None, qual_name=None, unique=False)
Make protected dictionary data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
key_types (str or type or None or tuple[str or type or None]) – Key types.
key_subtypes (bool) – Whether to accept subtypes for the keys.
key_factory (str or collections.abc.Callable or None) – Key factory.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Protected dictionary data attribute.
- Return type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_list_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=False, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None, qual_name=None, unique=False)
Make interactive list data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Interactive list data attribute.
- Return type
objetto.data.DataAttribute[objetto.data.InteractiveListData]
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_protected_list_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=False, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None, qual_name=None, unique=False)
Make protected list data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Protected list data attribute.
- Return type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_set_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=False, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None, qual_name=None, unique=False)
Make interactive set data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Interactive set data attribute.
- Return type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_protected_set_attribute(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, default=<objetto._bases.bases.MISSING object>, default_factory=None, required=False, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None, qual_name=None, unique=False)
Make protected set data attribute.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Protected set data attribute.
- Return type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
Auxiliary Data Class Factories
- objetto.data.data_dict_cls(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, key_types=(), key_subtypes=False, key_factory=None, qual_name=None, unique=False)
Make auxiliary interactive dictionary data class.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
key_types (str or type or None or tuple[str or type or None]) – Key types.
key_subtypes (bool) – Whether to accept subtypes for the keys.
key_factory (str or collections.abc.Callable or None) – Key factory.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Interactive dictionary data class.
- Type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_protected_dict_cls(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, key_types=(), key_subtypes=False, key_factory=None, qual_name=None, unique=False)
Make auxiliary protected dictionary data class.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
key_types (str or type or None or tuple[str or type or None]) – Key types.
key_subtypes (bool) – Whether to accept subtypes for the keys.
key_factory (str or collections.abc.Callable or None) – Key factory.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Protected dictionary data class.
- Type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_list_cls(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, qual_name=None, unique=False)
Make auxiliary interactive list data class.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Interactive list data class.
- Type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_protected_list_cls(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, qual_name=None, unique=False)
Make auxiliary protected list data class.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Protected list data class.
- Type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_set_cls(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, qual_name=None, unique=False)
Make auxiliary interactive set data class.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Interactive set data class.
- Type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- objetto.data.data_protected_set_cls(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True, qual_name=None, unique=False)
Make auxiliary protected set data class.
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
qual_name (str or None) – Optional type qualified name for the generated class.
unique (bool) – Whether generated class should have a unique descriptor.
- Returns
Protected set data class.
- Type
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
Unique Descriptor (for Data)
- objetto.data.unique_descriptor()
Descriptor to be used when declaring an
objetto.objects.Objector anobjetto.data.InteractiveDatacontainer class. When used, the hash for the container will be the object ID, and the equality method will compare by identity instead of values. If accessed through an instance, the descriptor will return the unique hash based on the object’s ID.>>> from objetto import Application, Object, unique_descriptor >>> class UniqueObject(Object): ... unique_hash = unique_descriptor() ... >>> app = Application() >>> obj = UniqueObject(app) >>> obj.unique_hash == hash(id(obj)) True
- Returns
Unique descriptor.
- Return type
objetto.objects.UniqueDescriptor or objetto.data.UniqueDescriptor
Auxiliary Data Classes
Data Dictionary Classes
- class objetto.data.DictDataMeta(name, bases, dct)
Metaclass for
objetto.data.DictData.- Inherits from:
- Features:
Defines a base auxiliary type.
- property _base_auxiliary_type
Base auxiliary container type.
- Return type
- class objetto.data.DictData(initial=())
Dictionary data.
- Metaclass:
- Inherits from:
- Inherited by:
- Parameters
initial (collections.abc.Mapping or collections.abc.Iterable[tuple[collections.abc.Hashable, Any]]) – Initial values.
- _clear()
Clear all keys and values.
- Returns
Transformed.
- Return type
- _set(key, value)
Set value for key.
- Parameters
key (collections.abc.Hashable) – Key.
value – Value.
- Returns
Transformed.
- Return type
- _discard(key)
Discard key if it exists.
- Parameters
key (collections.abc.Hashable) – Key.
- Returns
Transformed.
- Return type
- _remove(key)
Delete existing key.
- Parameters
key (collections.abc.Hashable) – Key.
- Returns
Transformed.
- Return type
- _update(*args, **kwargs)
Update keys and values. Same parameters as
dict.update().- Returns
Transformed.
- Return type
- classmethod deserialize(serialized, **kwargs)
Deserialize.
- Parameters
serialized (dict) – Serialized.
kwargs – Keyword arguments to be passed to the deserializers.
- Returns
Deserialized.
- Return type
- Raises
objetto.exceptions.SerializationError – Can’t deserialize.
- serialize(**kwargs)
Serialize.
- Parameters
kwargs – Keyword arguments to be passed to the serializers.
- Returns
Serialized.
- Return type
- Raises
objetto.exceptions.SerializationError – Can’t serialize.
- _key_relationship = KeyRelationship(checked=False, factory=None, module=None, subtypes=False, types=frozenset())
Relationship for dictionary keys.
- property _state
Internal state.
- Return type
- class objetto.data.InteractiveDictData(initial=())
Interactive dictionary data.
Data List Classes
- class objetto.data.ListDataMeta(name, bases, dct)
Metaclass for
objetto.data.ListData.- Inherits from:
- Features:
Defines a base auxiliary type.
- property _base_auxiliary_type
Base auxiliary container type.
- Return type
- class objetto.data.ListData(initial=())
List data.
- Metaclass:
- Inherits from:
- Inherited by:
- Parameters
initial (collections.abc.Iterable) – Initial values.
- __getitem__(index)
Get value/values at index/from slice.
- Parameters
- Returns
Value/values.
- Return type
Any or objetto.states.ListState
- _clear()
Clear all values.
- Returns
Transformed.
- Return type
- _insert(index, *values)
Insert value(s) at index.
- Parameters
index (int) – Index.
values (collections.abc.Iterable) – Value(s).
- Returns
Transformed.
- Return type
- Raises
ValueError – No values provided.
- _append(value)
Append value at the end.
- Parameters
value – Value.
- Returns
Transformed.
- Return type
- _extend(iterable)
Extend at the end with iterable.
- Parameters
iterable (collections.abc.Iterable) – Iterable.
- Returns
Transformed.
- Return type
- _remove(value)
Remove first occurrence of value.
- Parameters
value – Value.
- Returns
Transformed.
- Return type
- Raises
ValueError – Value is not present.
- _reverse()
Reverse values.
- Returns
Transformed.
- Return type
- _move(item, target_index)
Move values internally.
- Parameters
- Returns
Transformed.
- Return type
- _delete(item)
Delete values at index/slice.
- Parameters
- Returns
Transformed.
- Return type
- _update(index, *values)
Update value(s) starting at index.
- Parameters
index (int) – Index.
values – Value(s).
- Returns
Transformed.
- Return type
- Raises
ValueError – No values provided.
- classmethod deserialize(serialized, **kwargs)
Deserialize.
- Parameters
serialized – Serialized.
kwargs – Keyword arguments to be passed to the deserializers.
- Type
serialized: list
- Returns
Deserialized.
- Return type
- Raises
objetto.exceptions.SerializationError – Can’t deserialize.
- serialize(**kwargs)
Serialize.
- Parameters
kwargs – Keyword arguments to be passed to the serializers.
- Returns
Serialized.
- Return type
- Raises
objetto.exceptions.SerializationError – Can’t serialize.
- property _state
Internal state.
- Return type
- class objetto.data.InteractiveListData(initial=())
Interactive list data.
Data Set Classes
- class objetto.data.SetDataMeta(name, bases, dct)
Metaclass for
objetto.data.SetData.- Inherits from:
- Features:
Defines a base auxiliary type.
- property _base_auxiliary_type
Base auxiliary container type.
- Return type
- class objetto.data.SetData(initial=())
Set data.
- Metaclass:
- Inherits from:
- Inherited by:
- Parameters
initial (collections.abc.Iterable) – Initial values.
- classmethod _from_iterable(iterable)
Make set state from iterable.
- Parameters
iterable (collections.abc.Iterable) – Iterable.
- Returns
Set state.
- Return type
- _clear()
Clear all values.
- Returns
Transformed.
- Return type
- _add(value)
Add value.
- Parameters
value (collections.abc.Hashable) – Value.
- Returns
Transformed.
- Return type
- _discard(*values)
Discard value(s).
- Parameters
values (collections.abc.Hashable) – Value(s).
- Returns
Transformed.
- Return type
- Raises
ValueError – No values provided.
- _remove(*values)
Remove existing value(s).
- Parameters
values – Value(s).
- Returns
Transformed.
- Return type
- Raises
ValueError – No values provided.
KeyError – Value is not present.
- _replace(value, new_value)
Replace existing value with a new one.
- Parameters
value (collections.abc.Hashable) – Existing value.
new_value – New value.
- Returns
Transformed.
- Return type
- Raises
KeyError – Value is not present.
- _update(iterable)
Update with iterable.
- Parameters
iterable (collections.abc.Iterable[collections.abc.Hashable]) – Iterable.
- Returns
Transformed.
- Return type
- classmethod deserialize(serialized, **kwargs)
Deserialize.
- Parameters
serialized (list) – Serialized.
kwargs – Keyword arguments to be passed to the deserializers.
- Returns
Deserialized.
- Return type
- Raises
objetto.exceptions.SerializationError – Can’t deserialize.
- serialize(**kwargs)
Serialize.
- Parameters
kwargs – Keyword arguments to be passed to the serializers.
- Returns
Serialized.
- Return type
- Raises
objetto.exceptions.SerializationError – Can’t serialize.
- property _state
Internal state.
- Return type
- class objetto.data.InteractiveSetData(initial=())
Interactive set data.
Data Attribute Descriptor Class
- class objetto.data.DataAttributeMeta(name, bases, dct)
Metaclass for
objetto.data.DataAttribute.- Inherits from:
- Features:
Defines relationship type.
- property _relationship_type
Relationship type.
- Return type
- class objetto.data.DataAttribute(relationship=DataRelationship(checked=False, compared=True, deserializer=None, factory=None, module=None, represented=True, serialized=True, serializer=None, subtypes=False, types=frozenset()), default=<objetto._bases.bases.MISSING object>, default_factory=None, module=None, required=True, changeable=True, deletable=False, finalized=False, abstracted=False, metadata=None)
Attribute descriptor for
objetto.data.Dataclasses.- Metaclass:
- Inherits from:
- Parameters
relationship (objetto.data.DataRelationship) – Relationship.
default – Default value.
default_factory (str or collections.abc.Callable or None) – Default value factory.
module (str or None) – Optional module path to use in case partial paths are provided.
required (bool) – Whether attribute is required to have a value or not.
changeable (bool) – Whether attribute value can be changed.
deletable (bool) – Whether attribute value can be deleted.
finalized (bool) – If True, attribute can’t be overridden by subclasses.
abstracted (bool) – If True, attribute needs to be overridden by subclasses.
metadata – Metadata.
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- copy(**kwargs)
Make a copy of this attribute and optionally change some of its parameters.
- Parameters
kwargs – New parameters.
- Returns
New attribute.
- Return type
- property relationship
Relationship.
- Return type
Data Relationship Classes
- class objetto.data.DataRelationship(types=(), subtypes=False, checked=None, module=None, factory=None, serialized=True, serializer=None, deserializer=None, represented=True, compared=True)
Relationship between a data structure and its values.
- Inherits from:
- Parameters
types (str or type or None or tuple[str or type or None]) – Types.
subtypes (bool) – Whether to accept subtypes.
checked (bool) – Whether to perform runtime type check.
module (str or None) – Module path for lazy types/factories.
factory (str or collections.abc.Callable or None) – Value factory.
serialized (bool) – Whether should be serialized.
serializer (str or collections.abc.Callable or None) – Custom serializer.
deserializer (str or collections.abc.Callable or None) – Custom deserializer.
represented (bool) – Whether should be represented.
compared (bool) – Whether the value should be leverage when comparing.
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- class objetto.data.KeyRelationship(types=(), subtypes=False, checked=None, module=None, factory=None)
Relationship between a dictionary auxiliary structure and their keys.
- Inherits from:
- Parameters
- Raises
TypeError – Invalid parameter type.
ValueError – Invalid parameter value.
- __eq__(other)
Compare with another object for equality.
- Parameters
other – Another object.
- Returns
True if considered equal.
- Return type
- fabricate_key(key, factory=True, **kwargs)
Perform type check and run key through factory.
- Parameters
key (collections.abc.Hashable) – Key.
factory (bool) – Whether to run value through factory.
kwargs – Keyword arguments to be passed to the factory.
- Returns
Fabricated value.
- property factory
Key factory.
- Return type
str or collections.abc.Callable or None
Unique Descriptor Class (for Data)
- class objetto.data.UniqueDescriptor
Descriptor to be used on
objetto.bases.BaseStructureclasses. When used, the object ID will be the hash, and the equality method will compare by identity instead of by values. If accessed through an instance, the descriptor will return the object ID.- Inherits from:
- __get__(instance, owner)
Get object hash when accessing from instance or this descriptor otherwise.
- Parameters
instance (objetto.bases.BaseStructure or None) – Instance.
owner (type[objetto.bases.BaseStructure] or None) – Owner class.
- Returns
Object hash based on object ID or this descriptor.
- Return type
int or objetto.objects.UniqueDescriptor or objetto.data.UniqueDescriptor