import collections.abc import numpy import numpy.typing import typing from typing import Any, overload input: None standalone: bool class Column: def __init__(self, *args, **kwargs) -> None: """Initialize self. See help(type(self)) for accurate signature.""" def to_numbers_array(self) -> numpy.typing.NDArray[numpy.float64]: """to_numbers_array(self: easymorph.Column) -> numpy.typing.NDArray[numpy.float64] Returns a copy of the column as an array of floats. Non-numeric values are NaNs. """ def __array__(self) -> numpy.typing.NDArray[numpy.float64]: """__array__(self: easymorph.Column) -> numpy.typing.NDArray[numpy.float64] Returns a copy of the column as an array of floats. Non-numeric values are NaNs. """ @overload def __getitem__(self, arg0: typing.SupportsInt) -> None | str | float | bool: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.Column, arg0: typing.SupportsInt) -> None | str | float | bool 2. __getitem__(self: easymorph.Column, arg0: slice) -> easymorph.ColumnSliceView """ @overload def __getitem__(self, arg0: slice) -> ColumnSliceView: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.Column, arg0: typing.SupportsInt) -> None | str | float | bool 2. __getitem__(self: easymorph.Column, arg0: slice) -> easymorph.ColumnSliceView """ def __iter__(self) -> collections.abc.Iterator[None | str | float | bool]: """__iter__(self: easymorph.Column) -> collections.abc.Iterator[None | str | float | bool]""" def __len__(self) -> int: """__len__(self: easymorph.Column) -> int""" @property def name(self) -> str: """(arg0: easymorph.Column) -> str""" class ColumnSliceView: def __init__(self, *args, **kwargs) -> None: """Initialize self. See help(type(self)) for accurate signature.""" def __getitem__(self, arg0: typing.SupportsInt) -> None | str | float | bool: """__getitem__(self: easymorph.ColumnSliceView, arg0: typing.SupportsInt) -> None | str | float | bool""" def __iter__(self) -> collections.abc.Iterator[None | str | float | bool]: """__iter__(self: easymorph.ColumnSliceView) -> collections.abc.Iterator[None | str | float | bool]""" def __len__(self) -> int: """__len__(self: easymorph.ColumnSliceView) -> int""" class ColumnsRange: def __init__(self, *args, **kwargs) -> None: """Initialize self. See help(type(self)) for accurate signature.""" def __contains__(self, arg0: str) -> bool: """__contains__(self: easymorph.ColumnsRange, arg0: str) -> bool""" @overload def __getitem__(self, arg0: typing.SupportsInt) -> Column: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.ColumnsRange, arg0: typing.SupportsInt) -> easymorph.Column 2. __getitem__(self: easymorph.ColumnsRange, arg0: str) -> easymorph.Column """ @overload def __getitem__(self, arg0: str) -> Column: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.ColumnsRange, arg0: typing.SupportsInt) -> easymorph.Column 2. __getitem__(self: easymorph.ColumnsRange, arg0: str) -> easymorph.Column """ def __iter__(self) -> collections.abc.Iterator[Column]: """__iter__(self: easymorph.ColumnsRange) -> collections.abc.Iterator[easymorph.Column]""" def __len__(self) -> int: """__len__(self: easymorph.ColumnsRange) -> int""" class Dataset: """Immutable columnar dataset.""" def __init__(self, *args, **kwargs) -> None: """Initialize self. See help(type(self)) for accurate signature.""" @overload def get_cell(self, column: typing.SupportsInt, row: typing.SupportsInt) -> None | str | float | bool: """get_cell(*args, **kwargs) Overloaded function. 1. get_cell(self: easymorph.Dataset, column: typing.SupportsInt, row: typing.SupportsInt) -> None | str | float | bool Get cell data as bool | str | float or None. 2. get_cell(self: easymorph.Dataset, column: str, row: typing.SupportsInt) -> None | str | float | bool Get cell data as bool | str | float or None. """ @overload def get_cell(self, column: str, row: typing.SupportsInt) -> None | str | float | bool: """get_cell(*args, **kwargs) Overloaded function. 1. get_cell(self: easymorph.Dataset, column: typing.SupportsInt, row: typing.SupportsInt) -> None | str | float | bool Get cell data as bool | str | float or None. 2. get_cell(self: easymorph.Dataset, column: str, row: typing.SupportsInt) -> None | str | float | bool Get cell data as bool | str | float or None. """ def get_cell_as_date(self, column: typing.SupportsInt, row: typing.SupportsInt) -> object: """get_cell_as_date(self: easymorph.Dataset, column: typing.SupportsInt, row: typing.SupportsInt) -> object Try converting numeric cell value to datetime. """ @overload def get_cell_as_text(self, column: typing.SupportsInt, row: typing.SupportsInt) -> str: """get_cell_as_text(*args, **kwargs) Overloaded function. 1. get_cell_as_text(self: easymorph.Dataset, column: typing.SupportsInt, row: typing.SupportsInt) -> str Get cell content as text string. 2. get_cell_as_text(self: easymorph.Dataset, column: str, row: typing.SupportsInt) -> str Get cell content as text string. """ @overload def get_cell_as_text(self, column: str, row: typing.SupportsInt) -> str: """get_cell_as_text(*args, **kwargs) Overloaded function. 1. get_cell_as_text(self: easymorph.Dataset, column: typing.SupportsInt, row: typing.SupportsInt) -> str Get cell content as text string. 2. get_cell_as_text(self: easymorph.Dataset, column: str, row: typing.SupportsInt) -> str Get cell content as text string. """ @property def columns(self) -> ColumnsRange: """Column view. (arg0: easymorph.Dataset) -> easymorph.ColumnsRange """ @property def length(self) -> int: """Number of rows. (arg0: easymorph.Dataset) -> int """ @property def rows(self) -> RowsView: """Row view. (arg0: easymorph.Dataset) -> easymorph.RowsView """ @property def width(self) -> int: """Number of columns. (arg0: easymorph.Dataset) -> int """ class DatasetBuilder: """Incrementally builds a columnar Dataset in native memory.""" def __init__(self) -> None: """__init__(self: easymorph.DatasetBuilder) -> None""" @overload def add_column(self, arg0: str, arg1: collections.abc.Iterable) -> DatasetBuilder: """add_column(*args, **kwargs) Overloaded function. 1. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Iterable) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. 2. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Sequence[typing.SupportsFloat]) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. """ @overload def add_column(self, name, values) -> Any: """add_column(*args, **kwargs) Overloaded function. 1. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Iterable) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. 2. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Sequence[typing.SupportsFloat]) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. """ @overload def add_column(self, arg0: str, arg1: collections.abc.Sequence[typing.SupportsFloat]) -> DatasetBuilder: """add_column(*args, **kwargs) Overloaded function. 1. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Iterable) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. 2. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Sequence[typing.SupportsFloat]) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. """ @overload def add_column(self, name, values) -> Any: """add_column(*args, **kwargs) Overloaded function. 1. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Iterable) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. 2. add_column(self: easymorph.DatasetBuilder, arg0: str, arg1: collections.abc.Sequence[typing.SupportsFloat]) -> easymorph.DatasetBuilder add_column(name, values) Bulk append rows to specified column. Creates column if it is not found. Notes ----- - This is fastest way to build a dataset. """ @overload def add_columns(self, columns: dict) -> DatasetBuilder: """add_columns(self: easymorph.DatasetBuilder, columns: dict) -> easymorph.DatasetBuilder add_columns(columns) Add several columns in a single call. Parameters ---------- columns : Mapping[str, Iterable[Any] | numpy.ndarray] Dict mapping column names to data. - Fast path: a 1D float64 array. - Otherwise: any iterable of convertible values. Returns ------- DatasetBuilder The builder itself (chainable). Raises ------ TypeError | ValueError When a value cannot be represented as EasyMorph cell type. """ @overload def add_columns(self, columns) -> Any: """add_columns(self: easymorph.DatasetBuilder, columns: dict) -> easymorph.DatasetBuilder add_columns(columns) Add several columns in a single call. Parameters ---------- columns : Mapping[str, Iterable[Any] | numpy.ndarray] Dict mapping column names to data. - Fast path: a 1D float64 array. - Otherwise: any iterable of convertible values. Returns ------- DatasetBuilder The builder itself (chainable). Raises ------ TypeError | ValueError When a value cannot be represented as EasyMorph cell type. """ @overload def add_row(self, record: object) -> DatasetBuilder: """add_row(self: easymorph.DatasetBuilder, record: object) -> easymorph.DatasetBuilder add_row(record) Append a single row. Parameters ---------- record : dict[str, Any] | Sequence[Any] - Mapping: keys become column names; missing columns are padded with empty cells. Extra keys create new columns on the fly. - Sequence: values are written by position; missing tail values are padded. New columns are created when the sequence is longer than the current width. Raises ------ TypeError If *record* is neither a dict nor a sequence. """ @overload def add_row(self, record) -> Any: """add_row(self: easymorph.DatasetBuilder, record: object) -> easymorph.DatasetBuilder add_row(record) Append a single row. Parameters ---------- record : dict[str, Any] | Sequence[Any] - Mapping: keys become column names; missing columns are padded with empty cells. Extra keys create new columns on the fly. - Sequence: values are written by position; missing tail values are padded. New columns are created when the sequence is longer than the current width. Raises ------ TypeError If *record* is neither a dict nor a sequence. """ @overload def add_rows(self, records: collections.abc.Iterable) -> DatasetBuilder: """add_rows(self: easymorph.DatasetBuilder, records: collections.abc.Iterable) -> easymorph.DatasetBuilder add_rows(records) Bulk append rows from any iterable that yields row objects. Parameters ---------- records : Iterable[Any] Objects accepted by add_row. Notes ----- - This is a bit faster than calling `add_row` in a Python loop. """ @overload def add_rows(self, records) -> Any: """add_rows(self: easymorph.DatasetBuilder, records: collections.abc.Iterable) -> easymorph.DatasetBuilder add_rows(records) Bulk append rows from any iterable that yields row objects. Parameters ---------- records : Iterable[Any] Objects accepted by add_row. Notes ----- - This is a bit faster than calling `add_row` in a Python loop. """ @overload def to_dataset(self, reset: bool = ...) -> Dataset: """to_dataset(self: easymorph.DatasetBuilder, reset: bool = True) -> easymorph.Dataset to_dataset(reset=True) Finalize the builder and return an immutable dataset. Parameters ---------- reset : bool, default True Clear the builder after the dataset is created. Returns ------- Dataset Resulting immutable dataset. """ @overload def to_dataset(self, reset=...) -> Any: """to_dataset(self: easymorph.DatasetBuilder, reset: bool = True) -> easymorph.Dataset to_dataset(reset=True) Finalize the builder and return an immutable dataset. Parameters ---------- reset : bool, default True Clear the builder after the dataset is created. Returns ------- Dataset Resulting immutable dataset. """ @property def column_names(self) -> list[str]: """Return a list of all column names. (arg0: easymorph.DatasetBuilder) -> list[str] """ @property def length(self) -> int: """Number of rows. (arg0: easymorph.DatasetBuilder) -> int """ @property def width(self) -> int: """Number of columns. (arg0: easymorph.DatasetBuilder) -> int """ class ErrorValue: """EasyMorph error cell value.""" def __init__(self, arg0: str) -> None: """__init__(self: easymorph.ErrorValue, arg0: str) -> None""" @property def text(self) -> str: """(self: easymorph.ErrorValue) -> str""" class Row: def __init__(self, *args, **kwargs) -> None: """Initialize self. See help(type(self)) for accurate signature.""" def to_dict(self) -> dict: """to_dict(self: easymorph.Row) -> dict""" @overload def __getitem__(self, arg0: typing.SupportsInt) -> None | str | float | bool: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.Row, arg0: typing.SupportsInt) -> None | str | float | bool 2. __getitem__(self: easymorph.Row, arg0: str) -> None | str | float | bool """ @overload def __getitem__(self, arg0: str) -> None | str | float | bool: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.Row, arg0: typing.SupportsInt) -> None | str | float | bool 2. __getitem__(self: easymorph.Row, arg0: str) -> None | str | float | bool """ def __len__(self) -> int: """__len__(self: easymorph.Row) -> int""" class RowsView: def __init__(self, *args, **kwargs) -> None: """Initialize self. See help(type(self)) for accurate signature.""" @overload def __getitem__(self, arg0: typing.SupportsInt) -> Row: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.RowsView, arg0: typing.SupportsInt) -> easymorph.Row 2. __getitem__(self: easymorph.RowsView, arg0: slice) -> easymorph.RowsView """ @overload def __getitem__(self, arg0: slice) -> RowsView: """__getitem__(*args, **kwargs) Overloaded function. 1. __getitem__(self: easymorph.RowsView, arg0: typing.SupportsInt) -> easymorph.Row 2. __getitem__(self: easymorph.RowsView, arg0: slice) -> easymorph.RowsView """ def __iter__(self) -> collections.abc.Iterator[Row]: """__iter__(self: easymorph.RowsView) -> collections.abc.Iterator[easymorph.Row]""" def __len__(self) -> int: """__len__(self: easymorph.RowsView) -> int""" def get_param(key: str, when_standalone: object = ...) -> object: """get_param(key: str, when_standalone: object = None) -> object Get parameter passed from the calling workflow. Optional argument for standalone scripts. """ def get_param_as_date(key: str, when_standalone: object = ...) -> object: """get_param_as_date(key: str, when_standalone: object = None) -> object Return a workflow parameter converted to datetime. Raises if not convertible. Optional argument for standalone scripts. """ def get_params_as_dict(errors_as_values: bool = ...) -> dict: """get_params_as_dict(errors_as_values: bool = False) -> dict Return all workflow parameters as a dict. """ def is_cancellation_requested() -> bool: """is_cancellation_requested() -> bool Return True if the EasyMorph engine requested cancellation; the script should exit soon. """ def number_to_date(arg0: typing.SupportsFloat) -> object: """number_to_date(arg0: typing.SupportsFloat) -> object Convert OADate number to datetime. """ def read_dataset(arg0: str) -> Dataset: """read_dataset(arg0: str) -> easymorph.Dataset Read a dataset from disk. Parameters ---------- fname : str | os.PathLike Path to an EasyMorph .dset file. Returns ------- Dataset Immutable dataset loaded into native memory. Raises ------ RuntimeError | ValueError When the file is not a valid dataset. """ def save_dataset(arg0: Dataset, arg1: str) -> None: """save_dataset(arg0: easymorph.Dataset, arg1: str) -> None Save a dataset to disk. Parameters ---------- output_dset : Dataset Dataset to write. fname : str | os.PathLike Target file path. Raises ------ ValueError If *output_dset* is None. """ def warn(msg: str, show_callsite: bool = ...) -> None: """warn(msg: str, show_callsite: bool = True) -> None Log a warning message to the EasyMorph engine. Parameters ---------- msg : str Warning text. show_callsite : bool, default True Include the call-site line when True. Notes ----- - The message is recorded only in the module's internal warning collection, it's not passed to python's `warnings`. """ @overload def yield_output(arg0: Dataset) -> None: """yield_output(*args, **kwargs) Overloaded function. 1. yield_output(arg0: easymorph.Dataset) -> None Sets the output of calling EasyMorph action. Has no effect in standalone mode. 2. yield_output(arg0: easymorph.DatasetBuilder) -> None Sets the output of calling EasyMorph action. Has no effect in standalone mode. """ @overload def yield_output(arg0: DatasetBuilder) -> None: """yield_output(*args, **kwargs) Overloaded function. 1. yield_output(arg0: easymorph.Dataset) -> None Sets the output of calling EasyMorph action. Has no effect in standalone mode. 2. yield_output(arg0: easymorph.DatasetBuilder) -> None Sets the output of calling EasyMorph action. Has no effect in standalone mode. """