Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
_iotools.pyi117 linesDownload Raw Back to lib
1from collections.abc import Callable, Iterable, Sequence
2from typing import (
3    Any,
4    ClassVar,
5    Final,
6    Literal,
7    TypedDict,
8    TypeVar,
9    Unpack,
10    overload,
11    type_check_only,
12)
13
14import numpy as np
15import numpy.typing as npt
16from numpy._typing._dtype_like import _DTypeLikeNested
17
18_T = TypeVar("_T")
19
20@type_check_only
21class _NameValidatorKwargs(TypedDict, total=False):
22    excludelist: Iterable[str] | None
23    deletechars: Iterable[str] | None
24    case_sensitive: Literal["upper", "lower"] | bool | None
25    replace_space: str
26
27###
28
29__docformat__: Final = "restructuredtext en"
30
31class ConverterError(Exception): ...
32class ConverterLockError(ConverterError): ...
33class ConversionWarning(UserWarning): ...
34
35class LineSplitter:
36    delimiter: str | int | Iterable[int] | None
37    comments: str
38    encoding: str | None
39
40    def __init__(
41        self,
42        /,
43        delimiter: str | bytes | int | Iterable[int] | None = None,
44        comments: str | bytes = "#",
45        autostrip: bool = True,
46        encoding: str | None = None,
47    ) -> None: ...
48    def __call__(self, /, line: str | bytes) -> list[str]: ...
49    def autostrip(self, /, method: Callable[[_T], Iterable[str]]) -> Callable[[_T], list[str]]: ...
50
51class NameValidator:
52    defaultexcludelist: ClassVar[Sequence[str]] = ...
53    defaultdeletechars: ClassVar[frozenset[str]] = ...
54    excludelist: list[str]
55    deletechars: set[str]
56    case_converter: Callable[[str], str]
57    replace_space: str
58
59    def __init__(
60        self,
61        /,
62        excludelist: Iterable[str] | None = None,
63        deletechars: Iterable[str] | None = None,
64        case_sensitive: Literal["upper", "lower"] | bool | None = None,
65        replace_space: str = "_",
66    ) -> None: ...
67    def __call__(self, /, names: Iterable[str], defaultfmt: str = "f%i", nbfields: int | None = None) -> tuple[str, ...]: ...
68    def validate(self, /, names: Iterable[str], defaultfmt: str = "f%i", nbfields: int | None = None) -> tuple[str, ...]: ...
69
70class StringConverter:
71    func: Callable[[str], Any] | None
72    default: Any
73    missing_values: set[str]
74    type: np.dtype[np.datetime64] | np.generic
75
76    def __init__(
77        self,
78        /,
79        dtype_or_func: npt.DTypeLike | None = None,
80        default: None = None,
81        missing_values: Iterable[str] | None = None,
82        locked: bool = False,
83    ) -> None: ...
84    def update(
85        self,
86        /,
87        func: Callable[[str], Any],
88        default: object | None = None,
89        testing_value: str | None = None,
90        missing_values: str = "",
91        locked: bool = False,
92    ) -> None: ...
93    #
94    def __call__(self, /, value: str) -> Any: ...
95    def upgrade(self, /, value: str) -> Any: ...
96    def iterupgrade(self, /, value: Iterable[str] | str) -> None: ...
97
98    #
99    @classmethod
100    def upgrade_mapper(cls, func: Callable[[str], Any], default: object | None = None) -> None: ...
101
102def _decode_line(line: str | bytes, encoding: str | None = None) -> str: ...
103def _is_string_like(obj: object) -> bool: ...
104def _is_bytes_like(obj: object) -> bool: ...
105def has_nested_fields(ndtype: np.dtype[np.void]) -> bool: ...
106def flatten_dtype(ndtype: np.dtype[np.void], flatten_base: bool = False) -> type[np.dtype]: ...
107@overload
108def str2bool(value: Literal["false", "False", "FALSE"]) -> Literal[False]: ...
109@overload
110def str2bool(value: Literal["true", "True", "TRUE"]) -> Literal[True]: ...
111def easy_dtype(
112    ndtype: str | Sequence[_DTypeLikeNested],
113    names: str | Sequence[str] | None = None,
114    defaultfmt: str = "f%i",
115    **validationargs: Unpack[_NameValidatorKwargs],
116) -> np.dtype[np.void]: ...
117 
codekingpro/portable-devtools · Team Ai