omnipy.data.param
Parameter model helpers for configurable Omnipy model and dataset classes.
This module defines the read-only parameter class pattern used by Omnipy models and datasets, plus helpers that clone classes with adjusted parameter defaults.
| CLASS | DESCRIPTION |
|---|---|
ParamsBase |
Read-only class-level parameter container for adjusted model variants. |
| FUNCTION | DESCRIPTION |
|---|---|
bind_adjust_dataset_func |
Bind a dataset-cloning helper to model and parameter classes. |
bind_adjust_model_func |
Bind a model-cloning helper to a parameter class. |
params_dataclass |
Decorate a params declaration as a keyword-only dataclass. |
ParamsBase
flowchart BT
omnipy.data.param.ParamsBase[ParamsBase]
omnipy.util.pydantic.BaseModel --> omnipy.data.param.ParamsBase
click omnipy.data.param.ParamsBase href "" "omnipy.data.param.ParamsBase"
Read-only class-level parameter container for adjusted model variants.
ParamsBase subclasses declare validated default values as pydantic
fields, but they are used as class objects rather than instantiated data
objects. Omnipy reads parameter values directly from the class and can clone
the parameter class with selected defaults overridden.
- Reference Code reference
| CLASS | DESCRIPTION |
|---|---|
Config |
Pydantic model configuration: allows arbitrary types and enables smart union matching. |
| METHOD | DESCRIPTION |
|---|---|
copy_and_adjust |
Clone the parameter class with updated default field values. |
Source code in src/omnipy/data/param.py
Config
Pydantic model configuration: allows arbitrary types and enables smart union matching.
| ATTRIBUTE | DESCRIPTION |
|---|---|
arbitrary_types_allowed |
|
smart_union |
|
Source code in src/omnipy/data/param.py
copy_and_adjust
classmethod
copy_and_adjust(model_name: str, **kwargs: object) -> type[ParamsBase]
Clone the parameter class with updated default field values.
| PARAMETER | DESCRIPTION |
|---|---|
model_name
|
Name to assign to the cloned parameter class.
TYPE:
|
**kwargs
|
Field defaults to override in the clone.
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
type[ParamsBase]
|
A new :class: |
Source code in src/omnipy/data/param.py
bind_adjust_dataset_func
bind_adjust_dataset_func(
clone_dataset_func: Callable[..., type[_DatasetT]],
model_cls: type[_ModelT],
params_cls: Callable[_ParamsP, Any],
) -> Callable[Concatenate[str, str, _ParamsP], type[_DatasetT]]
Bind a dataset-cloning helper to model and parameter classes.
The returned function first creates an adjusted model class, then clones a
dataset class bound to that model, while also attaching a cloned Params
class with the same adjusted defaults.
| PARAMETER | DESCRIPTION |
|---|---|
clone_dataset_func
|
Function that clones the dataset class.
TYPE:
|
model_cls
|
Base model class to adjust before cloning the dataset.
TYPE:
|
params_cls
|
Parameter class whose defaults should be adjusted.
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
Callable[Concatenate[str, str, _ParamsP], type[_DatasetT]]
|
A helper that accepts dataset and model names plus keyword-only parameter overrides, then returns the adjusted dataset class. |
- Reference Code reference
Source code in src/omnipy/data/param.py
bind_adjust_model_func
bind_adjust_model_func(
clone_model_func: Callable[..., type[_ModelT]], params_cls: Callable[_ParamsP, Any]
) -> Callable[Concatenate[str, _ParamsP], type[_ModelT]]
Bind a model-cloning helper to a parameter class.
The returned function creates a cloned model class, then replaces its
Params class with a copy of params_cls whose defaults are adjusted
from the supplied keyword arguments.
| PARAMETER | DESCRIPTION |
|---|---|
clone_model_func
|
Function that clones the target model class.
TYPE:
|
params_cls
|
Parameter class whose defaults should be adjusted.
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
Callable[Concatenate[str, _ParamsP], type[_ModelT]]
|
A helper that accepts a new model name and keyword-only parameter overrides, then returns the adjusted model class. |
-
Reference
Code reference
-
omnipy-
BytesModeladjust -
JoinColumnsByCommaToLinesModeladjust -
JoinColumnsToLinesModeladjust -
JoinItemsModeladjust -
JoinLinesModeladjust -
MatchItemsModeladjust -
NestedJoinItemsModeladjust -
NestedSplitToItemsModeladjust -
SplitLinesToColumnsByCommaModeladjust -
SplitLinesToColumnsModeladjust -
SplitToItemsByTabModeladjust -
SplitToItemsModeladjust -
SplitToLinesModeladjust -
StrModeladjust
-
-
omnipy
components
raw
models-
BytesModeladjust -
JoinColumnsByCommaToLinesModeladjust -
JoinColumnsToLinesModeladjust -
JoinItemsModeladjust -
JoinLinesModeladjust -
JoinSubitemsToItemsModeladjust -
MatchItemsModeladjust -
NestedJoinItemsModeladjust -
NestedSplitToItemsModeladjust -
SplitItemsToSubitemsModeladjust -
SplitLinesToColumnsByCommaModeladjust -
SplitLinesToColumnsModeladjust -
SplitToItemsByTabModeladjust -
SplitToItemsModeladjust -
SplitToLinesModeladjust -
StrModeladjust
-
-
Source code in src/omnipy/data/param.py
params_dataclass
Decorate a params declaration as a keyword-only dataclass.
| RETURNS | DESCRIPTION |
|---|---|
type[_ParamsT]
|
The same class wrapped by :func: |