pyufunc.dataclass_extend#

pyufunc.dataclass_extend(base_dataclass, additional_attributes)#

Creates a new dataclass by extending the base_dataclass with additional_attributes.

Parameters:
  • base_dataclass (dataclass) – The base dataclass to extend.

  • additional_attributes (list) – A list of tuples in the form - (name, type, default_value). - or (name, default_value) to add to the base dataclass.

Example

>>> from dataclasses import dataclass
>>> from typing import List
>>> from pyufunc import dataclass_extend
>>> @dataclass
... class BaseDataclass:
...     name: str = 'base'
>>> ExtendedDataclass = dataclass_extend(
...     base_dataclass=BaseDataclass,
...     additional_attributes=[('new_attr', List[int], [1, 2, 3])])
>>> ExtendedDataclass
Returns:

A new dataclass that includes fields from base_dataclass and additional_attributes.

Return type:

dataclass