Source code for pydelfini.delfini_core.models.item_statistics

from typing import Any
from typing import Dict
from typing import Type
from typing import TypeVar

from attrs import define as _attrs_define

from ..models.item_statistics_columns import ItemStatisticsColumns


T = TypeVar("T", bound="ItemStatistics")


[docs] @_attrs_define class ItemStatistics: """ItemStatistics model Attributes: columns (ItemStatisticsColumns): total_columns (int): total_rows (int): """ columns: "ItemStatisticsColumns" total_columns: int total_rows: int
[docs] def to_dict(self) -> Dict[str, Any]: """Convert to a dict""" columns = self.columns.to_dict() total_columns = self.total_columns total_rows = self.total_rows field_dict: Dict[str, Any] = {} field_dict.update( { "columns": columns, "totalColumns": total_columns, "totalRows": total_rows, } ) return field_dict
[docs] @classmethod def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T: """Create an instance of :py:class:`ItemStatistics` from a dict""" d = src_dict.copy() columns = ItemStatisticsColumns.from_dict(d.pop("columns")) total_columns = d.pop("totalColumns") total_rows = d.pop("totalRows") item_statistics = cls( columns=columns, total_columns=total_columns, total_rows=total_rows, ) return item_statistics