pythonic-fp-numpy 1.0.0__py3-none-any.whl → 6.0.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.
- pythonic_fp/numpy/hashable_wrapped_ndarray.py +5 -4
- pythonic_fp_numpy-6.0.0.dist-info/METADATA +51 -0
- pythonic_fp_numpy-6.0.0.dist-info/RECORD +7 -0
- pythonic_fp/numpy/__init__.pyi +0 -0
- pythonic_fp/numpy/hashable_wrapped_ndarray.pyi +0 -48
- pythonic_fp_numpy-1.0.0.dist-info/METADATA +0 -62
- pythonic_fp_numpy-1.0.0.dist-info/RECORD +0 -9
- {pythonic_fp_numpy-1.0.0.dist-info → pythonic_fp_numpy-6.0.0.dist-info}/WHEEL +0 -0
- {pythonic_fp_numpy-1.0.0.dist-info → pythonic_fp_numpy-6.0.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
15
|
from abc import ABC, abstractmethod
|
|
16
|
-
from enum import
|
|
16
|
+
from enum import Enum, auto
|
|
17
|
+
|
|
17
18
|
import numpy as np
|
|
18
19
|
import numpy.typing as npt
|
|
19
20
|
|
|
@@ -75,7 +76,7 @@ class HWrapNDArray(ABC):
|
|
|
75
76
|
|
|
76
77
|
"""
|
|
77
78
|
|
|
78
|
-
__slots__ = '
|
|
79
|
+
__slots__ = '_hash', '_ndarray', '_shape', '_type'
|
|
79
80
|
|
|
80
81
|
def __init__(self, ndarray: npt.NDArray[np.generic]) -> None:
|
|
81
82
|
"""
|
|
@@ -127,7 +128,7 @@ class HWrapNDArray(ABC):
|
|
|
127
128
|
- Never make the underlying NDArray writable!!!
|
|
128
129
|
|
|
129
130
|
"""
|
|
130
|
-
return np.array(self._ndarray)
|
|
131
|
+
return np.array(iter(self._ndarray))
|
|
131
132
|
|
|
132
133
|
def __hash__(self) -> int:
|
|
133
134
|
"""
|
|
@@ -185,7 +186,7 @@ class HWrapNDArray(ABC):
|
|
|
185
186
|
Return a copy of the wrapped NDArray.
|
|
186
187
|
|
|
187
188
|
"""
|
|
188
|
-
return np.array(self._ndarray, copy=True)
|
|
189
|
+
return np.array(iter(self._ndarray), copy=True)
|
|
189
190
|
|
|
190
191
|
|
|
191
192
|
class HWrapNDArrayNumber(HWrapNDArray):
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pythonic-fp-numpy
|
|
3
|
+
Version: 6.0.0
|
|
4
|
+
Summary: FP tools for Numpy
|
|
5
|
+
Keywords: numpy,ndarray,hashable,wrap
|
|
6
|
+
Author-email: "Geoffrey R. Scheller" <geoffrey@scheller.com>
|
|
7
|
+
Requires-Python: >=3.14
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
Classifier: Development Status :: 3 - Alpha
|
|
10
|
+
Classifier: Framework :: Pytest
|
|
11
|
+
Classifier: Intended Audience :: Developers
|
|
12
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
|
+
Classifier: Operating System :: OS Independent
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
16
|
+
Classifier: Typing :: Typed
|
|
17
|
+
License-File: LICENSE
|
|
18
|
+
Requires-Dist: numpy>=2.3.4
|
|
19
|
+
Project-URL: Changelog, https://github.com/grscheller/pythonic-fp-numpy/blob/main/CHANGELOG.md
|
|
20
|
+
Project-URL: Documentation, https://grscheller.github.io/pythonic-fp-numpy
|
|
21
|
+
Project-URL: Homepage, https://grscheller.github.io/pythonic-fp
|
|
22
|
+
Project-URL: Source, https://github.com/grscheller/pythonic-fp-numpy
|
|
23
|
+
|
|
24
|
+
# Pythonic FP - FP Numpy
|
|
25
|
+
|
|
26
|
+
Python package implementing functional programming tools for NumPy.
|
|
27
|
+
|
|
28
|
+
PyPI project
|
|
29
|
+
[pythonic-fp-numpy](https://pypi.org/project/pythonic-fp-numpy).
|
|
30
|
+
Part of the
|
|
31
|
+
[pythonic-fp](https://grscheller.github.io/pythonic-fp)
|
|
32
|
+
PyPI projects.
|
|
33
|
+
|
|
34
|
+
## Documentation
|
|
35
|
+
|
|
36
|
+
Documentation and other links for this project are hosted on
|
|
37
|
+
[GitHub Pages](https://grscheller.github.io/pythonic-fp-numpy).
|
|
38
|
+
|
|
39
|
+
### Modules
|
|
40
|
+
|
|
41
|
+
#### Module hashable_wrapped_ndarray
|
|
42
|
+
|
|
43
|
+
- wrap readonly NDArrays to make them hashable
|
|
44
|
+
- prioritize performance over safety
|
|
45
|
+
- see PyPI project boring-math-abstract-algebra for a use case
|
|
46
|
+
|
|
47
|
+
## Copyright and License
|
|
48
|
+
|
|
49
|
+
Copyright (c) 2025-2026 Geoffrey R. Scheller. Licensed under the Apache
|
|
50
|
+
License, Version 2.0. See the LICENSE file for details.
|
|
51
|
+
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
pythonic_fp/numpy/__init__.py,sha256=dL-LF98cK5PId82_PBhTq9iTnfZthQkCq_jBTSKKBN0,964
|
|
2
|
+
pythonic_fp/numpy/hashable_wrapped_ndarray.py,sha256=9iIXhF5yDZV3fKijmJjqu1toc034zXcBmLfKbVgD2oA,10811
|
|
3
|
+
pythonic_fp/numpy/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
|
+
pythonic_fp_numpy-6.0.0.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
|
|
5
|
+
pythonic_fp_numpy-6.0.0.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
|
6
|
+
pythonic_fp_numpy-6.0.0.dist-info/METADATA,sha256=VsUSJqF_xxLDvEkq7_Qirb45uuDOOYr4N-UuL9-sQ3Q,1721
|
|
7
|
+
pythonic_fp_numpy-6.0.0.dist-info/RECORD,,
|
pythonic_fp/numpy/__init__.pyi
DELETED
|
File without changes
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import abc
|
|
2
|
-
import numpy as np
|
|
3
|
-
import numpy.typing as npt
|
|
4
|
-
from abc import ABC
|
|
5
|
-
from enum import Enum
|
|
6
|
-
|
|
7
|
-
__all__ = ['DTypes', 'HWrapNDArray', 'HWrapNDArrayNumber', 'HWrapNDArrayString', 'HWrapNDArrayBytes', 'HWrapNDArrayVoid', 'HWrapNDArrayObject', 'HWrapNDArrayDateTime', 'HWrapNDArrayTimeDelta', 'HWrapNDArrayBool']
|
|
8
|
-
|
|
9
|
-
class DTypes(Enum):
|
|
10
|
-
number = ...
|
|
11
|
-
str_ = ...
|
|
12
|
-
bytes = ...
|
|
13
|
-
void = ...
|
|
14
|
-
object_ = ...
|
|
15
|
-
datetime64 = ...
|
|
16
|
-
timedelta64 = ...
|
|
17
|
-
bool_ = ...
|
|
18
|
-
|
|
19
|
-
class HWrapNDArray(ABC, metaclass=abc.ABCMeta):
|
|
20
|
-
def __init__(self, ndarray: npt.NDArray[np.generic]) -> None: ...
|
|
21
|
-
def __call__(self) -> npt.NDArray[np.number]: ...
|
|
22
|
-
def __hash__(self) -> int: ...
|
|
23
|
-
def __eq__(self, other: object) -> bool: ...
|
|
24
|
-
def copy(self) -> npt.NDArray[np.number]: ...
|
|
25
|
-
|
|
26
|
-
class HWrapNDArrayNumber(HWrapNDArray):
|
|
27
|
-
def __init__(self, ndarray: npt.NDArray[np.number]) -> None: ...
|
|
28
|
-
|
|
29
|
-
class HWrapNDArrayString(HWrapNDArray):
|
|
30
|
-
def __init__(self, ndarray: npt.NDArray[np.str_]) -> None: ...
|
|
31
|
-
|
|
32
|
-
class HWrapNDArrayBytes(HWrapNDArray):
|
|
33
|
-
def __init__(self, ndarray: npt.NDArray[np.bytes_]) -> None: ...
|
|
34
|
-
|
|
35
|
-
class HWrapNDArrayVoid(HWrapNDArray):
|
|
36
|
-
def __init__(self, ndarray: npt.NDArray[np.void]) -> None: ...
|
|
37
|
-
|
|
38
|
-
class HWrapNDArrayObject(HWrapNDArray):
|
|
39
|
-
def __init__(self, ndarray: npt.NDArray[np.object_]) -> None: ...
|
|
40
|
-
|
|
41
|
-
class HWrapNDArrayDateTime(HWrapNDArray):
|
|
42
|
-
def __init__(self, ndarray: npt.NDArray[np.datetime64]) -> None: ...
|
|
43
|
-
|
|
44
|
-
class HWrapNDArrayTimeDelta(HWrapNDArray):
|
|
45
|
-
def __init__(self, ndarray: npt.NDArray[np.timedelta64]) -> None: ...
|
|
46
|
-
|
|
47
|
-
class HWrapNDArrayBool(HWrapNDArray):
|
|
48
|
-
def __init__(self, ndarray: npt.NDArray[np.bool_]) -> None: ...
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: pythonic-fp-numpy
|
|
3
|
-
Version: 1.0.0
|
|
4
|
-
Summary: NumPy Tools
|
|
5
|
-
Keywords: numpy,ndarray,hashable,wrap
|
|
6
|
-
Author-email: "Geoffrey R. Scheller" <geoffrey@scheller.com>
|
|
7
|
-
Requires-Python: >=3.13
|
|
8
|
-
Description-Content-Type: text/x-rst
|
|
9
|
-
Classifier: Development Status :: 3 - Alpha
|
|
10
|
-
Classifier: Framework :: Pytest
|
|
11
|
-
Classifier: Intended Audience :: Developers
|
|
12
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
|
-
Classifier: Operating System :: OS Independent
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.14
|
|
15
|
-
Classifier: Typing :: Typed
|
|
16
|
-
License-File: LICENSE
|
|
17
|
-
Requires-Dist: numpy>=2.3.4
|
|
18
|
-
Requires-Dist: boring-math-abstract-algebra>=1.1.0 ; extra == "test"
|
|
19
|
-
Requires-Dist: pytest>=8.4.1 ; extra == "test"
|
|
20
|
-
Project-URL: Changelog, https://github.com/grscheller/pythonic-fp-numpy/blob/main/CHANGELOG.rst
|
|
21
|
-
Project-URL: Documentation, https://grscheller.github.io/pythonic-fp/projects/numpy.html
|
|
22
|
-
Project-URL: Homepage, https://grscheller.github.io/pythonic-fp/
|
|
23
|
-
Project-URL: Source, https://github.com/grscheller/pythonic-fp-numpy
|
|
24
|
-
Provides-Extra: test
|
|
25
|
-
|
|
26
|
-
Pythonic FP - FP Numpy
|
|
27
|
-
======================
|
|
28
|
-
|
|
29
|
-
PyPI project
|
|
30
|
-
`pythonic-fp-numpy
|
|
31
|
-
<https://pypi.org/project/pythonic-fp-numpy>`_.
|
|
32
|
-
|
|
33
|
-
Python package implementing functional programming for NumPy.
|
|
34
|
-
|
|
35
|
-
Part of the
|
|
36
|
-
`pythonic-fp
|
|
37
|
-
<https://grscheller.github.io/pythonic-fp/>`_
|
|
38
|
-
PyPI projects.
|
|
39
|
-
|
|
40
|
-
Modules
|
|
41
|
-
-------
|
|
42
|
-
|
|
43
|
-
Module hashable_wrapped_ndarray
|
|
44
|
-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
45
|
-
|
|
46
|
-
- wrap readonly NDArrays to make them hashable
|
|
47
|
-
- prioritize performance over safety
|
|
48
|
-
- see PyPI project boring-math-abstract-algebra for a use case
|
|
49
|
-
|
|
50
|
-
Documentation
|
|
51
|
-
-------------
|
|
52
|
-
|
|
53
|
-
Documentation and other links for this project are hosted on
|
|
54
|
-
`GitHub Pages
|
|
55
|
-
<https://grscheller.github.io/pythonic-fp/projects/numpy.html>`_.
|
|
56
|
-
|
|
57
|
-
Copyright and License
|
|
58
|
-
---------------------
|
|
59
|
-
|
|
60
|
-
Copyright (c) 2025-2026 Geoffrey R. Scheller. Licensed under the Apache
|
|
61
|
-
License, Version 2.0. See the LICENSE file for details.
|
|
62
|
-
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
pythonic_fp/numpy/__init__.py,sha256=dL-LF98cK5PId82_PBhTq9iTnfZthQkCq_jBTSKKBN0,964
|
|
2
|
-
pythonic_fp/numpy/__init__.pyi,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
pythonic_fp/numpy/hashable_wrapped_ndarray.py,sha256=Y8ZKHuD_Rw754fagc1cvTztgAwtt58uu58fY5If8HCI,10798
|
|
4
|
-
pythonic_fp/numpy/hashable_wrapped_ndarray.pyi,sha256=J4jsl5q5Lz15-Amunh824R5JOxZk8hnSUlDuPXa5lcs,1666
|
|
5
|
-
pythonic_fp/numpy/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
-
pythonic_fp_numpy-1.0.0.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
|
|
7
|
-
pythonic_fp_numpy-1.0.0.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
|
8
|
-
pythonic_fp_numpy-1.0.0.dist-info/METADATA,sha256=r_FLuxuoFdJQR9qX3DZbNEBt6kO-lePS5RYgjLMM6DM,1917
|
|
9
|
-
pythonic_fp_numpy-1.0.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|