jetpytools 1.5.0__py3-none-any.whl → 1.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of jetpytools might be problematic. Click here for more details.

jetpytools/utils/file.py CHANGED
@@ -9,20 +9,24 @@ from typing import IO, Any, BinaryIO, Callable, Literal, overload
9
9
 
10
10
  from ..exceptions import FileIsADirectoryError, FileNotExistsError, FilePermissionError, FileWasNotFoundError
11
11
  from ..types import (
12
- FileOpener, FilePathType, FuncExceptT, OpenBinaryMode, OpenBinaryModeReading, OpenBinaryModeUpdating,
13
- OpenBinaryModeWriting, OpenTextMode, SPath
12
+ FileOpener,
13
+ FilePathType,
14
+ FuncExceptT,
15
+ OpenBinaryMode,
16
+ OpenBinaryModeReading,
17
+ OpenBinaryModeUpdating,
18
+ OpenBinaryModeWriting,
19
+ OpenTextMode,
20
+ SPath,
14
21
  )
15
22
 
16
23
  __all__ = [
17
- 'add_script_path_hook',
18
- 'remove_script_path_hook',
19
-
20
- 'get_script_path',
21
-
22
- 'get_user_data_dir',
23
-
24
- 'check_perms',
25
- 'open_file'
24
+ "add_script_path_hook",
25
+ "check_perms",
26
+ "get_script_path",
27
+ "get_user_data_dir",
28
+ "open_file",
29
+ "remove_script_path_hook",
26
30
  ]
27
31
 
28
32
  _script_path_hooks = list[Callable[[], SPath | None]]()
@@ -52,26 +56,24 @@ def get_script_path() -> SPath:
52
56
  def get_user_data_dir() -> Path:
53
57
  """Get user data dir path."""
54
58
 
55
- if sys.platform == 'win32':
59
+ if sys.platform == "win32":
56
60
  buf = ctypes.create_unicode_buffer(1024)
57
61
  ctypes.windll.shell32.SHGetFolderPathW(None, 28, None, 0, buf)
58
62
 
59
- if any([ord(c) > 255 for c in buf]):
63
+ if any(ord(c) > 255 for c in buf):
60
64
  buf2 = ctypes.create_unicode_buffer(1024)
61
65
  if ctypes.windll.kernel32.GetShortPathNameW(buf.value, buf2, 1024):
62
66
  buf = buf2
63
67
 
64
68
  return Path(path.normpath(buf.value))
65
-
66
- if sys.platform == 'darwin': # type: ignore[unreachable]
67
- return Path(path.expanduser('~/Library/Application Support/'))
68
-
69
- return Path(getenv('XDG_DATA_HOME', path.expanduser("~/.local/share")))
69
+ elif sys.platform == "darwin":
70
+ return Path(path.expanduser("~/Library/Application Support/"))
71
+ else:
72
+ return Path(getenv("XDG_DATA_HOME", path.expanduser("~/.local/share")))
70
73
 
71
74
 
72
75
  def check_perms(
73
- file: FilePathType, mode: OpenTextMode | OpenBinaryMode, strict: bool = False,
74
- *, func: FuncExceptT | None = None
76
+ file: FilePathType, mode: OpenTextMode | OpenBinaryMode, strict: bool = False, *, func: FuncExceptT | None = None
75
77
  ) -> bool:
76
78
  """
77
79
  Confirm whether the user has write/read access to a file.
@@ -93,18 +95,17 @@ def check_perms(
93
95
 
94
96
  mode_i = F_OK
95
97
 
96
- if func is not None:
97
- if not str(file):
98
- raise FileNotExistsError(file, func)
98
+ if func is not None and not str(file):
99
+ raise FileNotExistsError(file, func)
99
100
 
100
- for char in 'rbU':
101
- mode_str = mode.replace(char, '')
101
+ for char in "rbU":
102
+ mode_str = mode.replace(char, "")
102
103
 
103
- if not mode_str:
104
+ if not mode_str: # pyright: ignore[reportPossiblyUnboundVariable]
104
105
  mode_i = R_OK
105
- elif 'x' in mode_str:
106
+ elif "x" in mode_str:
106
107
  mode_i = X_OK
107
- elif '+' in mode_str or 'w' in mode_str:
108
+ elif "+" in mode_str or "w" in mode_str:
108
109
  mode_i = W_OK
109
110
 
110
111
  check_file = file
@@ -118,78 +119,102 @@ def check_perms(
118
119
 
119
120
  got_perms = access(check_file, mode_i)
120
121
 
121
- if func is not None:
122
- if not got_perms:
123
- if strict and not file.exists():
124
- if file.parent.exists():
125
- raise FileWasNotFoundError(file, func)
122
+ if func is not None and not got_perms:
123
+ if strict and not file.exists():
124
+ if file.parent.exists():
125
+ raise FileWasNotFoundError(file, func)
126
126
 
127
- raise FileNotExistsError(file, func)
127
+ raise FileNotExistsError(file, func)
128
128
 
129
- raise FilePermissionError(file, func)
129
+ raise FilePermissionError(file, func)
130
130
 
131
131
  return got_perms
132
132
 
133
133
 
134
134
  @overload
135
135
  def open_file(
136
- file: FilePathType, mode: OpenTextMode = 'r', buffering: int = ...,
137
- encoding: str | None = None, errors: str | None = ..., newline: str | None = ...,
138
- *, func: FuncExceptT | None = None
139
- ) -> TextIOWrapper:
140
- ...
136
+ file: FilePathType,
137
+ mode: OpenTextMode = "r",
138
+ buffering: int = ...,
139
+ encoding: str | None = None,
140
+ errors: str | None = ...,
141
+ newline: str | None = ...,
142
+ *,
143
+ func: FuncExceptT | None = None,
144
+ ) -> TextIOWrapper: ...
141
145
 
142
146
 
143
147
  @overload
144
148
  def open_file(
145
- file: FilePathType, mode: OpenBinaryMode, buffering: Literal[0],
146
- encoding: None = None, *, func: FuncExceptT | None = None
147
- ) -> FileIO:
148
- ...
149
+ file: FilePathType,
150
+ mode: OpenBinaryMode,
151
+ buffering: Literal[0],
152
+ encoding: None = None,
153
+ *,
154
+ func: FuncExceptT | None = None,
155
+ ) -> FileIO: ...
149
156
 
150
157
 
151
158
  @overload
152
159
  def open_file(
153
- file: FilePathType, mode: OpenBinaryModeUpdating, buffering: Literal[-1, 1] = ...,
154
- encoding: None = None, *, func: FuncExceptT | None = None
155
- ) -> BufferedRandom:
156
- ...
160
+ file: FilePathType,
161
+ mode: OpenBinaryModeUpdating,
162
+ buffering: Literal[-1, 1] = ...,
163
+ encoding: None = None,
164
+ *,
165
+ func: FuncExceptT | None = None,
166
+ ) -> BufferedRandom: ...
157
167
 
158
168
 
159
169
  @overload
160
170
  def open_file(
161
- file: FilePathType, mode: OpenBinaryModeWriting, buffering: Literal[-1, 1] = ...,
162
- encoding: None = None, *, func: FuncExceptT | None = None
163
- ) -> BufferedWriter:
164
- ...
171
+ file: FilePathType,
172
+ mode: OpenBinaryModeWriting,
173
+ buffering: Literal[-1, 1] = ...,
174
+ encoding: None = None,
175
+ *,
176
+ func: FuncExceptT | None = None,
177
+ ) -> BufferedWriter: ...
165
178
 
166
179
 
167
180
  @overload
168
181
  def open_file(
169
- file: FilePathType, mode: OpenBinaryModeReading, buffering: Literal[-1, 1] = ...,
170
- encoding: None = None, *, func: FuncExceptT | None = None
171
- ) -> BufferedReader:
172
- ...
182
+ file: FilePathType,
183
+ mode: OpenBinaryModeReading,
184
+ buffering: Literal[-1, 1] = ...,
185
+ encoding: None = None,
186
+ *,
187
+ func: FuncExceptT | None = None,
188
+ ) -> BufferedReader: ...
173
189
 
174
190
 
175
191
  @overload
176
192
  def open_file(
177
- file: FilePathType, mode: OpenBinaryMode, buffering: int = ...,
178
- encoding: None = None, *, func: FuncExceptT | None = None
179
- ) -> BinaryIO:
180
- ...
193
+ file: FilePathType,
194
+ mode: OpenBinaryMode,
195
+ buffering: int = ...,
196
+ encoding: None = None,
197
+ *,
198
+ func: FuncExceptT | None = None,
199
+ ) -> BinaryIO: ...
181
200
 
182
201
 
183
202
  @overload
184
203
  def open_file(
185
- file: FilePathType, mode: str, buffering: int = ...,
186
- encoding: str | None = ..., errors: str | None = ..., newline: str | None = ...,
187
- closefd: bool = ..., opener: FileOpener | None = ..., *, func: FuncExceptT | None = None
188
- ) -> IO[Any]:
189
- ...
190
-
191
-
192
- def open_file(file: FilePathType, mode: Any = 'r+', *args: Any, func: FuncExceptT | None = None, **kwargs: Any) -> Any:
204
+ file: FilePathType,
205
+ mode: str,
206
+ buffering: int = ...,
207
+ encoding: str | None = ...,
208
+ errors: str | None = ...,
209
+ newline: str | None = ...,
210
+ closefd: bool = ...,
211
+ opener: FileOpener | None = ...,
212
+ *,
213
+ func: FuncExceptT | None = None,
214
+ ) -> IO[Any]: ...
215
+
216
+
217
+ def open_file(file: FilePathType, mode: Any = "r+", *args: Any, func: FuncExceptT | None = None, **kwargs: Any) -> Any:
193
218
  """
194
219
  Open file and return a stream. Raise OSError upon failure.
195
220
 
@@ -253,4 +278,4 @@ def open_file(file: FilePathType, mode: Any = 'r+', *args: Any, func: FuncExcept
253
278
 
254
279
  check_perms(file, mode, func=func)
255
280
 
256
- return open(file, mode, *args, errors='strict', closefd=True, **kwargs) # type: ignore
281
+ return open(file, mode, *args, errors="strict", closefd=True, **kwargs) # type: ignore
jetpytools/utils/funcs.py CHANGED
@@ -2,26 +2,21 @@ from __future__ import annotations
2
2
 
3
3
  from functools import update_wrapper
4
4
  from types import FunctionType
5
- from typing import Sequence
5
+ from typing import Any, Callable, Sequence
6
6
 
7
7
  from ..types import F
8
8
 
9
- __all__ = [
10
- 'copy_func',
11
- 'erase_module'
12
- ]
9
+ __all__ = ["copy_func", "erase_module"]
13
10
 
14
11
 
15
- def copy_func(f: F) -> FunctionType:
12
+ def copy_func(f: Callable[..., Any]) -> FunctionType:
16
13
  """Try copying a function."""
17
14
 
18
15
  try:
19
- g = FunctionType(
20
- f.__code__, f.__globals__, name=f.__name__, argdefs=f.__defaults__, closure=f.__closure__
21
- )
22
- g = update_wrapper(g, f) # type: ignore
23
- g.__kwdefaults__ = f.__kwdefaults__
24
- return g
16
+ g = FunctionType(f.__code__, f.__globals__, name=f.__name__, argdefs=f.__defaults__, closure=f.__closure__)
17
+ g = update_wrapper(g, f)
18
+ g.__kwdefaults__ = f.__kwdefaults__ # type: ignore
19
+ return g # type: ignore
25
20
  except BaseException: # for builtins
26
21
  return f # type: ignore
27
22
 
@@ -29,7 +24,7 @@ def copy_func(f: F) -> FunctionType:
29
24
  def erase_module(func: F, modules: Sequence[str] | None = None) -> F:
30
25
  """Delete the __module__ of the function."""
31
26
 
32
- if hasattr(func, '__module__') and (True if modules is None else (func.__module__ in modules)):
27
+ if hasattr(func, "__module__") and (True if modules is None else (func.__module__ in modules)):
33
28
  func.__module__ = None # type: ignore
34
29
 
35
30
  return func
jetpytools/utils/math.py CHANGED
@@ -6,17 +6,17 @@ from typing import Sequence
6
6
  from ..types import Nb
7
7
 
8
8
  __all__ = [
9
- 'clamp', 'clamp_arr',
10
-
11
- 'cround',
12
-
13
- 'mod_x', 'mod2', 'mod4', 'mod8',
14
-
15
- 'next_power_of_y', 'next_power_of_2',
16
-
17
- 'spline_coeff',
18
-
19
- 'ndigits'
9
+ "clamp",
10
+ "clamp_arr",
11
+ "cround",
12
+ "mod2",
13
+ "mod4",
14
+ "mod8",
15
+ "mod_x",
16
+ "ndigits",
17
+ "next_power_of_2",
18
+ "next_power_of_y",
19
+ "spline_coeff",
20
20
  ]
21
21
 
22
22
 
@@ -35,7 +35,7 @@ def clamp_arr(vals: Sequence[Nb], min_val: Nb, max_val: Nb) -> list[Nb]:
35
35
  def cround(x: float, *, eps: float = 1e-6) -> int:
36
36
  """Rounding function that accounts for float's imprecision."""
37
37
 
38
- return round(x + (eps if x > 0. else - eps))
38
+ return round(x + (eps if x > 0.0 else -eps))
39
39
 
40
40
 
41
41
  def mod_x(val: int | float, x: int) -> int:
@@ -77,7 +77,7 @@ def next_power_of_2(x: float) -> int:
77
77
  return x
78
78
 
79
79
  while x & (x - 1) > 0:
80
- x &= (x - 1)
80
+ x &= x - 1
81
81
 
82
82
  return x << 1
83
83
 
@@ -92,9 +92,19 @@ def next_power_of_y(x: float, y: int) -> int:
92
92
 
93
93
 
94
94
  def spline_coeff(
95
- x: int, coordinates: list[tuple[float, float]] = [
96
- (0, 0), (0.5, 0.1), (1, 0.6), (2, 0.9), (2.5, 1), (3, 1.1), (3.5, 1.15), (4, 1.2), (8, 1.25), (255, 1.5)
97
- ]
95
+ x: int,
96
+ coordinates: list[tuple[float, float]] = [
97
+ (0, 0),
98
+ (0.5, 0.1),
99
+ (1, 0.6),
100
+ (2, 0.9),
101
+ (2.5, 1),
102
+ (3, 1.1),
103
+ (3.5, 1.15),
104
+ (4, 1.2),
105
+ (8, 1.25),
106
+ (255, 1.5),
107
+ ],
98
108
  ) -> float:
99
109
  """Get spline coefficient of an index and coordinates."""
100
110
 
@@ -6,21 +6,17 @@ from typing import Iterable, overload
6
6
  from ..exceptions import CustomIndexError
7
7
  from ..types import T0, T
8
8
 
9
- __all__ = [
10
- 'ranges_product',
11
-
12
- 'interleave_arr'
13
- ]
9
+ __all__ = ["interleave_arr", "ranges_product"]
14
10
 
15
11
 
16
12
  @overload
17
- def ranges_product(range0: range | int, range1: range | int, /) -> Iterable[tuple[int, int]]:
18
- ...
13
+ def ranges_product(range0: range | int, range1: range | int, /) -> Iterable[tuple[int, int]]: ...
19
14
 
20
15
 
21
16
  @overload
22
- def ranges_product(range0: range | int, range1: range | int, range2: range | int, /) -> Iterable[tuple[int, int, int]]:
23
- ...
17
+ def ranges_product(
18
+ range0: range | int, range1: range | int, range2: range | int, /
19
+ ) -> Iterable[tuple[int, int, int]]: ...
24
20
 
25
21
 
26
22
  def ranges_product(*_iterables: range | int) -> Iterable[tuple[int, ...]]:
@@ -34,7 +30,7 @@ def ranges_product(*_iterables: range | int) -> Iterable[tuple[int, ...]]:
34
30
  n_iterables = len(_iterables)
35
31
 
36
32
  if n_iterables <= 1:
37
- raise CustomIndexError(f'Not enough ranges passed! ({n_iterables})', ranges_product)
33
+ raise CustomIndexError(f"Not enough ranges passed! ({n_iterables})", ranges_product)
38
34
 
39
35
  iterables = [range(x) if isinstance(x, int) else x for x in _iterables]
40
36
 
@@ -52,7 +48,7 @@ def ranges_product(*_iterables: range | int) -> Iterable[tuple[int, ...]]:
52
48
  for zz in third_it:
53
49
  yield xx, yy, zz
54
50
  else:
55
- raise CustomIndexError(f'Too many ranges passed! ({n_iterables})', ranges_product)
51
+ raise CustomIndexError(f"Too many ranges passed! ({n_iterables})", ranges_product)
56
52
 
57
53
 
58
54
  def interleave_arr(arr0: Iterable[T], arr1: Iterable[T0], n: int = 2) -> Iterable[T | T0]:
@@ -1,36 +1,23 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jetpytools
3
- Version: 1.5.0
3
+ Version: 1.6.0
4
4
  Summary: Collection of stuff that's useful in general python programming
5
- Author: Jaded Encoding Thaumaturgy
6
- Author-email: jaded.encoding.thaumaturgy@gmail.com
7
- Maintainer: Jaded Encoding Thaumaturgy
8
- Maintainer-email: jaded.encoding.thaumaturgy@gmail.com
9
5
  Project-URL: Source Code, https://github.com/Jaded-Encoding-Thaumaturgy/jetpytools
10
6
  Project-URL: Contact, https://discord.gg/XTpc6Fa9eB
11
- Classifier: Natural Language :: English
12
- Classifier: Intended Audience :: Developers
13
- Classifier: Intended Audience :: Other Audience
14
- Classifier: Programming Language :: Python :: 3.10
7
+ Author: Jaded Encoding Thaumaturgy
8
+ Maintainer-email: Jaded Encoding Thaumaturgy <jaded.encoding.thaumaturgy@gmail.com>
9
+ License-Expression: MIT
10
+ License-File: LICENSE
11
+ Classifier: Development Status :: 5 - Production/Stable
15
12
  Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Natural Language :: English
16
14
  Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3 :: Only
17
17
  Classifier: Typing :: Typed
18
18
  Requires-Python: >=3.10
19
+ Requires-Dist: typing-extensions>=4.12.2
19
20
  Description-Content-Type: text/markdown
20
- License-File: LICENSE
21
- Requires-Dist: typing_extensions>=4.12.2
22
- Dynamic: author
23
- Dynamic: author-email
24
- Dynamic: classifier
25
- Dynamic: description
26
- Dynamic: description-content-type
27
- Dynamic: license-file
28
- Dynamic: maintainer
29
- Dynamic: maintainer-email
30
- Dynamic: project-url
31
- Dynamic: requires-dist
32
- Dynamic: requires-python
33
- Dynamic: summary
34
21
 
35
22
  # jetpytools
36
23
 
@@ -0,0 +1,33 @@
1
+ jetpytools/__init__.py,sha256=ha_pCOMqfeIbipDRrtqKOqH3NQEpX4KwN2SskpsCGb4,114
2
+ jetpytools/_metadata.py,sha256=XO7Oud0g8sALlb1QbO71uKV5O0egljHFJ3Kn3NKLrcY,414
3
+ jetpytools/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ jetpytools/enums/__init__.py,sha256=TvEt3TWmnzf2TWS_Gd6llyyXAGDKxdhdJsDgSvT7xys,41
5
+ jetpytools/enums/base.py,sha256=L5dk6UAsQ3V6GVj0vulKaiJsholnh0Ftyh1FZFM9zwI,2034
6
+ jetpytools/enums/other.py,sha256=9GGRS4P-P589C1HqNpDDBhLdphID1trwCJi7pbXT0iM,1317
7
+ jetpytools/exceptions/__init__.py,sha256=0rNEfnOuoSRUyKsutGzHFWQkgiFaK7diOT4VbRVKt9c,105
8
+ jetpytools/exceptions/base.py,sha256=Blla807sSqweA9DC821wIZaXIB6Y_YeE7HTkWrQwPBY,5973
9
+ jetpytools/exceptions/enum.py,sha256=euR6cyMetVWSfTgO5rkblhQyEgusdwhx6Rd9I5ZoFbA,293
10
+ jetpytools/exceptions/file.py,sha256=7Eh4aPo4r1W-ppnf6XLwWaStOSjIxw9JfzOCa4W7m8E,1105
11
+ jetpytools/exceptions/generic.py,sha256=5LYQHdSLM2wu5fv40PTrjkW9v0iq8R-QlQzhVsiLLpE,1509
12
+ jetpytools/exceptions/module.py,sha256=hjkpvTPZALRvo1Q5y7D1wEAsssjyRZSZSf98gks3lKw,1231
13
+ jetpytools/functions/__init__.py,sha256=jCw3-aaOGxIzi6iyFInWPOxOFbzZg8IZhoSuGYaNgLA,67
14
+ jetpytools/functions/funcs.py,sha256=lcdWaJtslhXZNfNu_y-Badgz2uy0bVaoA3D_lLo_GNI,5286
15
+ jetpytools/functions/normalize.py,sha256=xUR5Bo_bB1W1HSlDSvupq7i5nnDRvwdcJsZ8ejYXvUQ,8597
16
+ jetpytools/functions/other.py,sha256=P_NdrtFxR_Sosn9QblU-Ea4mKEyWY7AegQzmiQPSVLk,407
17
+ jetpytools/types/__init__.py,sha256=oP1cm6LtRpjPXQ0M4JnKH4RkzrBxBPos_xLHaITrgSs,154
18
+ jetpytools/types/builtins.py,sha256=4uAutpHlkcKM3K_6BbWomqR2QgWNt6294FHE3Ck_ZIA,2067
19
+ jetpytools/types/check.py,sha256=ktQOykmryUkDa2j-zcL6uEWF8QlxJ4GW8YKdbqMHGcc,959
20
+ jetpytools/types/file.py,sha256=LbOwMAwDALWxAZZ2i7ZNexoN3GHWD-uUoIhVvUy95Vo,6539
21
+ jetpytools/types/funcs.py,sha256=U5tBmTtLS5CLp3ZtOiA5101PQiCWQOBsmf0bj1pRwgY,2778
22
+ jetpytools/types/generic.py,sha256=SFnUqDAVehKZ36HmLrs9PN4Ze0BLcabPjwC7hJsGp4w,1102
23
+ jetpytools/types/supports.py,sha256=woMTv62HpcRiC5TG18U8NU5v2Q6iqcrHzQgXl7QYEws,3516
24
+ jetpytools/types/utils.py,sha256=eEypP1hh3bubw4J_Rr8InEQnr0XG1myLmXnmwYPLM-c,20410
25
+ jetpytools/utils/__init__.py,sha256=_rJ-mY5PsGjBfy8Fihx_FYJfAIGSrYAYzI6Td9oFh9A,83
26
+ jetpytools/utils/file.py,sha256=um4ow7_UEH1UxOV74w6F1u4s0wC4zh98LrcwBYjed50,10578
27
+ jetpytools/utils/funcs.py,sha256=2qhFyLD0OLvenjzOu2wu1ZWoZGzQ8aPmvbkAI1i9Gvk,914
28
+ jetpytools/utils/math.py,sha256=I56OeHDDJl3X8EFXMWVEiXGAD16AKcn8KVnFuP5fFes,3445
29
+ jetpytools/utils/ranges.py,sha256=glxypgmuzauV6KCSNujNHOdWkNEUNylOUAPS618jnIg,2559
30
+ jetpytools-1.6.0.dist-info/METADATA,sha256=uUC_5CB4QvPFBIInkeJGG0RbeCaq_gRDsBVSybIZ_EQ,1198
31
+ jetpytools-1.6.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
32
+ jetpytools-1.6.0.dist-info/licenses/LICENSE,sha256=l0PN-qDtXcgOB5aXP_nSUsvCK5V3o9pQCGsTzyZhKL0,1071
33
+ jetpytools-1.6.0.dist-info/RECORD,,
@@ -1,5 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: hatchling 1.27.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
-
@@ -1,34 +0,0 @@
1
- jetpytools/__init__.py,sha256=FSVZdj69oy4mBXd6OXiRHrUhaSc4Exo1pQHBlXycV98,214
2
- jetpytools/_metadata.py,sha256=fESIm2gU509vtKESX3rl2qKEyN-tUKshySopOq_jWVc,414
3
- jetpytools/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- jetpytools/enums/__init__.py,sha256=5n6Cu8Yb9N6hIa_YTsyy_s0cCgCnh0vDb-NyXK2RwV0,81
5
- jetpytools/enums/base.py,sha256=m3jJ6rJwDm4vp2-qMsuRH-Ll2mQDXA-wkmhw4xaafTM,2003
6
- jetpytools/enums/other.py,sha256=DerFtmdjNK41ZxSYt601vHV5yzvZHPfTKNDlj-FjHm8,1346
7
- jetpytools/exceptions/__init__.py,sha256=g8GT0XqcNuHFHgQGSRj6a_X1kBiBQGP05soYNbEIN_Q,205
8
- jetpytools/exceptions/base.py,sha256=OZS5sJlNCh4Qy-2flvZugYpyJuXoRrxXa7RFqdDAktw,5969
9
- jetpytools/exceptions/enum.py,sha256=9YoWwEfyd9k7NwanAqtXbhJaJQAnjRKqsAO73cDvcpA,223
10
- jetpytools/exceptions/file.py,sha256=QwhUFAoG3NsFFYuPe5O_I6K969CzlrTCv3RTrfzx8B0,1107
11
- jetpytools/exceptions/generic.py,sha256=kMj5lR3ifHk3uNhpxN6Lu4Am0vi7E6TfQezkZulqhaQ,1482
12
- jetpytools/exceptions/module.py,sha256=drkcpa8hcE7Ee20N15j3qsX_grl8a3Jjv10XJ3xtDmE,1207
13
- jetpytools/functions/__init__.py,sha256=CeDfQrPCYqjiXyCoZ6jcbfM2d7KmRM11lBSxUK2wl4g,127
14
- jetpytools/functions/funcs.py,sha256=ZciVD2WbMo-21IzLkAjxv0WNnmikgIgTQ9O96JUzpa8,5359
15
- jetpytools/functions/normalize.py,sha256=acn13f_yt6zKhkSFNxiS_4ZQ6Dy4tm1iBhobLS2KpTY,8654
16
- jetpytools/functions/other.py,sha256=TRz91spvdYJUh9vKe3Kuw6xZfSEJvrQs1mZVg7SyYmY,413
17
- jetpytools/types/__init__.py,sha256=yDT-PYTTzH6DyHsQcKvOy1jrCPmUQRKrjCM3apd0kNw,294
18
- jetpytools/types/builtins.py,sha256=hndNUoxBeFx9kgSj-6Lm8rjQH0a9lkrqRqPDObr0pbk,1969
19
- jetpytools/types/check.py,sha256=Ivf_JkVLG9OgiKXYjq-8azoROLjJvhNNqPq_KDIiOkI,971
20
- jetpytools/types/file.py,sha256=PpeKPVKu6NDZexmy-3UeCVIdaPPwMUkhhgtaezG20H4,6349
21
- jetpytools/types/funcs.py,sha256=9qONnDWdpqvRj7vL3W9BLwWeGyQipXQgxOaPjqpQ1M4,3119
22
- jetpytools/types/generic.py,sha256=sAyBwGVG5FZ-6HVpfRuczov_6zQ_Uyoi0QWnR2iMm9Q,1128
23
- jetpytools/types/supports.py,sha256=--VZ-iCUiv-a6K8n-H8-6hSxHjrvdYg9mCLhr_lRplo,3051
24
- jetpytools/types/utils.py,sha256=eT3yoFUEQy4vKTyLDMp_6Ixy7woyF4afWgiLhS-Vr38,21030
25
- jetpytools/utils/__init__.py,sha256=v5Bkl43-OBWlXx9OWpZoGH-QMaYNsPIi4vfuhC13ZLI,163
26
- jetpytools/utils/file.py,sha256=9GhMGJ5D7CpvUFnvnwPFMloYTeIX-AJ7aKYKdoJQ374,10455
27
- jetpytools/utils/funcs.py,sha256=ZuLz63kveBY1CLlBexEqmrQiGC67dY4gaXdNU3CeBMw,898
28
- jetpytools/utils/math.py,sha256=r60dD7tWx3cgMEdPQDfvRH48JMKhf_XK0xA1kpnfQi4,3353
29
- jetpytools/utils/ranges.py,sha256=dL3WG235Pz9sk5su8A0VdwVf_oSt6obR7R_JNwLyCjQ,2572
30
- jetpytools-1.5.0.dist-info/licenses/LICENSE,sha256=l0PN-qDtXcgOB5aXP_nSUsvCK5V3o9pQCGsTzyZhKL0,1071
31
- jetpytools-1.5.0.dist-info/METADATA,sha256=SvNo1h_KF5ng6ZkVQlaagXRiRmPVarF8l1OtQ80rvNM,1485
32
- jetpytools-1.5.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
33
- jetpytools-1.5.0.dist-info/top_level.txt,sha256=Iy4HjIta33ADJxN9Nyt5t5jRIfotEkZkQcOSw4eG8Cs,11
34
- jetpytools-1.5.0.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- jetpytools