Z0Z-tools 2.2.0__tar.gz → 2.2.2__tar.gz

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.
Files changed (132) hide show
  1. z0z_tools-2.2.0/humpy_toolz/Notice_of_Copyright.txt → z0z_tools-2.2.2/LICENSE-Rocklin +0 -4
  2. z0z_tools-2.2.0/humpy_cytoolz/Notice_of_Copyright.txt → z0z_tools-2.2.2/LICENSE-Welch +0 -4
  3. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/PKG-INFO +14 -10
  4. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/README.md +7 -0
  5. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools.egg-info/PKG-INFO +14 -10
  6. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools.egg-info/SOURCES.txt +4 -11
  7. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools.egg-info/requires.txt +0 -1
  8. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/__init__.pxd +2 -2
  9. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/_signatures.pyi +7 -5
  10. z0z_tools-2.2.2/humpy_cytoolz/_theTypes.py +68 -0
  11. z0z_tools-2.2.2/humpy_cytoolz/curried/exceptions.pyi +31 -0
  12. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/dicttoolz.c +3864 -3738
  13. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/dicttoolz.pxd +16 -13
  14. z0z_tools-2.2.2/humpy_cytoolz/dicttoolz.pyi +125 -0
  15. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/dicttoolz.pyx +513 -507
  16. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/functoolz.c +1729 -1586
  17. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/functoolz.pyi +64 -67
  18. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/functoolz.pyx +252 -259
  19. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/itertoolz.c +3481 -3344
  20. z0z_tools-2.2.2/humpy_cytoolz/itertoolz.pyi +302 -0
  21. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/itertoolz.pyx +442 -494
  22. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/recipes.c +481 -354
  23. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/recipes.pyi +7 -5
  24. z0z_tools-2.2.2/humpy_cytoolz/recipes.pyx +77 -0
  25. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_curried_toolzlike.py +4 -4
  26. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_dicttoolz.py +5 -6
  27. {z0z_tools-2.2.0/humpy_toolz → z0z_tools-2.2.2/humpy_cytoolz}/tests/test_itertoolz.py +20 -9
  28. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/utils.c +246 -119
  29. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/utils.pyx +31 -0
  30. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_tlz/__init__.py +2 -1
  31. z0z_tools-2.2.2/humpy_tlz/_build_tlz.py +92 -0
  32. z0z_tools-2.2.0/humpy_toolz/__init__.pyi → z0z_tools-2.2.2/humpy_toolz/__init__.py +27 -14
  33. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/_signatures.py +17 -4
  34. z0z_tools-2.2.2/humpy_toolz/_theTypes.py +85 -0
  35. z0z_tools-2.2.2/humpy_toolz/curried/__init__.py +860 -0
  36. z0z_tools-2.2.2/humpy_toolz/curried/exceptions.py +51 -0
  37. z0z_tools-2.2.0/humpy_toolz/curried/operator.pyi → z0z_tools-2.2.2/humpy_toolz/curried/operator.py +121 -106
  38. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/dicttoolz.py +238 -119
  39. z0z_tools-2.2.2/humpy_toolz/functoolz.py +1120 -0
  40. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/itertoolz.py +918 -858
  41. z0z_tools-2.2.2/humpy_toolz/recipes.py +65 -0
  42. z0z_tools-2.2.2/humpy_toolz/sandbox/__init__.py +6 -0
  43. z0z_tools-2.2.2/humpy_toolz/sandbox/core.py +147 -0
  44. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/sandbox/parallel.py +44 -2
  45. z0z_tools-2.2.2/humpy_toolz/sandbox/tests/test_core.py +85 -0
  46. z0z_tools-2.2.2/humpy_toolz/sandbox/tests/test_parallel.py +25 -0
  47. z0z_tools-2.2.2/humpy_toolz/tests/test_curried.py +93 -0
  48. z0z_tools-2.2.2/humpy_toolz/tests/test_curried_doctests.py +12 -0
  49. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/tests/test_dicttoolz.py +77 -332
  50. z0z_tools-2.2.2/humpy_toolz/tests/test_functoolz.py +707 -0
  51. z0z_tools-2.2.2/humpy_toolz/tests/test_inspect_args.py +484 -0
  52. z0z_tools-2.2.2/humpy_toolz/tests/test_itertoolz.py +561 -0
  53. z0z_tools-2.2.2/humpy_toolz/tests/test_package.py +8 -0
  54. z0z_tools-2.2.2/humpy_toolz/tests/test_recipes.py +18 -0
  55. z0z_tools-2.2.2/humpy_toolz/tests/test_serialization.py +140 -0
  56. z0z_tools-2.2.2/humpy_toolz/tests/test_signatures.py +78 -0
  57. z0z_tools-2.2.2/humpy_toolz/tests/test_tlz.py +64 -0
  58. z0z_tools-2.2.2/humpy_toolz/tests/test_utils.py +7 -0
  59. z0z_tools-2.2.2/humpy_toolz/utils.py +64 -0
  60. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/pyproject.toml +13 -17
  61. z0z_tools-2.2.0/humpy_cytoolz/curried/exceptions.pyi +0 -30
  62. z0z_tools-2.2.0/humpy_cytoolz/dicttoolz.pyi +0 -126
  63. z0z_tools-2.2.0/humpy_cytoolz/itertoolz.pyi +0 -298
  64. z0z_tools-2.2.0/humpy_cytoolz/recipes.pyx +0 -67
  65. z0z_tools-2.2.0/humpy_cytoolz/tests/test_itertoolz.py +0 -415
  66. z0z_tools-2.2.0/humpy_tlz/_build_tlz.py +0 -82
  67. z0z_tools-2.2.0/humpy_toolz/__init__.py +0 -22
  68. z0z_tools-2.2.0/humpy_toolz/curried/__init__.py +0 -78
  69. z0z_tools-2.2.0/humpy_toolz/curried/__init__.pyi +0 -1498
  70. z0z_tools-2.2.0/humpy_toolz/curried/exceptions.py +0 -13
  71. z0z_tools-2.2.0/humpy_toolz/curried/exceptions.pyi +0 -94
  72. z0z_tools-2.2.0/humpy_toolz/curried/operator.py +0 -8
  73. z0z_tools-2.2.0/humpy_toolz/functoolz.py +0 -834
  74. z0z_tools-2.2.0/humpy_toolz/functoolz.pyi +0 -403
  75. z0z_tools-2.2.0/humpy_toolz/recipes.py +0 -43
  76. z0z_tools-2.2.0/humpy_toolz/recipes.pyi +0 -18
  77. z0z_tools-2.2.0/humpy_toolz/sandbox/__init__.py +0 -3
  78. z0z_tools-2.2.0/humpy_toolz/sandbox/__init__.pyi +0 -4
  79. z0z_tools-2.2.0/humpy_toolz/sandbox/core.py +0 -121
  80. z0z_tools-2.2.0/humpy_toolz/sandbox/core.pyi +0 -61
  81. z0z_tools-2.2.0/humpy_toolz/sandbox/parallel.pyi +0 -22
  82. z0z_tools-2.2.0/humpy_toolz/sandbox/tests/test_core.py +0 -82
  83. z0z_tools-2.2.0/humpy_toolz/sandbox/tests/test_parallel.py +0 -22
  84. z0z_tools-2.2.0/humpy_toolz/tests/test_curried.py +0 -89
  85. z0z_tools-2.2.0/humpy_toolz/tests/test_curried_doctests.py +0 -10
  86. z0z_tools-2.2.0/humpy_toolz/tests/test_functoolz.py +0 -620
  87. z0z_tools-2.2.0/humpy_toolz/tests/test_inspect_args.py +0 -441
  88. z0z_tools-2.2.0/humpy_toolz/tests/test_package.py +0 -6
  89. z0z_tools-2.2.0/humpy_toolz/tests/test_recipes.py +0 -16
  90. z0z_tools-2.2.0/humpy_toolz/tests/test_serialization.py +0 -139
  91. z0z_tools-2.2.0/humpy_toolz/tests/test_signatures.py +0 -74
  92. z0z_tools-2.2.0/humpy_toolz/tests/test_tlz.py +0 -53
  93. z0z_tools-2.2.0/humpy_toolz/tests/test_utils.py +0 -5
  94. z0z_tools-2.2.0/humpy_toolz/utils.py +0 -194
  95. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/LICENSE +0 -0
  96. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools/__init__.py +0 -0
  97. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools/py.typed +0 -0
  98. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools.egg-info/dependency_links.txt +0 -0
  99. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/Z0Z_tools.egg-info/top_level.txt +0 -0
  100. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/__init__.py +0 -0
  101. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/__init__.pyi +0 -0
  102. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/_signatures.py +0 -0
  103. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/cpython.pxd +0 -0
  104. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/curried/__init__.py +0 -0
  105. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/curried/exceptions.py +0 -0
  106. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/curried/operator.py +0 -0
  107. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/functoolz.pxd +0 -0
  108. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/itertoolz.pxd +0 -0
  109. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/py.typed +0 -0
  110. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/recipes.pxd +0 -0
  111. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/__init__.py +0 -0
  112. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/dev_skip_test.py +0 -0
  113. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_curried.py +0 -0
  114. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_dev_skip_test.py +0 -0
  115. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_docstrings.py +0 -0
  116. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_doctests.py +0 -0
  117. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_embedded_sigs.py +0 -0
  118. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_functoolz.py +0 -0
  119. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_inspect_args.py +0 -0
  120. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_none_safe.py +0 -0
  121. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_recipes.py +0 -0
  122. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_serialization.py +0 -0
  123. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_signatures.py +0 -0
  124. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_stubs.py +0 -0
  125. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_tlz.py +0 -0
  126. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/tests/test_utils.py +0 -0
  127. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/utils.pxd +0 -0
  128. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_cytoolz/utils.pyi +0 -0
  129. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/py.typed +0 -0
  130. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/sandbox/tests/__init__.py +0 -0
  131. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/humpy_toolz/tests/__init__.py +0 -0
  132. {z0z_tools-2.2.0 → z0z_tools-2.2.2}/setup.cfg +0 -0
@@ -1,7 +1,3 @@
1
- Some of the original or derivative works in this directory and its
2
- subdirectories may be protected by the following copyright.
3
- ___
4
-
5
1
  Copyright (c) 2013 Matthew Rocklin
6
2
 
7
3
  All rights reserved.
@@ -1,7 +1,3 @@
1
- Some of the original or derivative works in this directory and its
2
- subdirectories may be protected by the following copyright.
3
- ___
4
-
5
1
  Copyright (c) 2014-2022 Erik Welch
6
2
 
7
3
  All rights reserved.
@@ -1,22 +1,20 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Z0Z_tools
3
- Version: 2.2.0
3
+ Version: 2.2.2
4
4
  Summary: Typing, documenting, and improving toolz and cytoolz.
5
5
  Author-email: Hunter Hogan <HunterHogan@pm.me>
6
6
  License-Expression: CC-BY-NC-4.0
7
+ Project-URL: Context7, https://context7.com/hunterhogan/z0z-tools
7
8
  Project-URL: Donate, https://www.patreon.com/integrated
9
+ Project-URL: Download, https://pypi.org/project/Z0Z_tools
8
10
  Project-URL: Homepage, https://github.com/hunterhogan/Z0Z_tools
9
11
  Project-URL: Issues, https://github.com/hunterhogan/Z0Z_tools/issues
10
12
  Project-URL: Repository, https://github.com/hunterhogan/Z0Z_tools.git
11
- Keywords: Python,cytoolz,filesystem,functional programming,tools,toolz
12
- Classifier: Development Status :: 5 - Production/Stable
13
+ Keywords: Python,cytoolz,functional programming,toolz
14
+ Classifier: Development Status :: 4 - Beta
13
15
  Classifier: Environment :: Console
14
16
  Classifier: Framework :: Pytest
15
17
  Classifier: Intended Audience :: Developers
16
- Classifier: Intended Audience :: Education
17
- Classifier: Intended Audience :: End Users/Desktop
18
- Classifier: Intended Audience :: Other Audience
19
- Classifier: Intended Audience :: Science/Research
20
18
  Classifier: Natural Language :: English
21
19
  Classifier: Operating System :: OS Independent
22
20
  Classifier: Programming Language :: Python
@@ -25,20 +23,19 @@ Classifier: Programming Language :: Python :: 3.11
25
23
  Classifier: Programming Language :: Python :: 3.12
26
24
  Classifier: Programming Language :: Python :: 3.13
27
25
  Classifier: Programming Language :: Python :: 3.14
28
- Classifier: Topic :: System :: Filesystems
29
- Classifier: Topic :: Text Processing
30
26
  Classifier: Topic :: Utilities
31
27
  Classifier: Typing :: Typed
32
28
  Requires-Python: >=3.10
33
29
  Description-Content-Type: text/markdown
34
30
  License-File: LICENSE
31
+ License-File: LICENSE-Rocklin
32
+ License-File: LICENSE-Welch
35
33
  Requires-Dist: typing_extensions>=4.10.0
36
34
  Provides-Extra: development
37
35
  Requires-Dist: astToolkit; extra == "development"
38
36
  Requires-Dist: hunterMakesPy; extra == "development"
39
37
  Requires-Dist: pytest-cov; extra == "development"
40
38
  Provides-Extra: testing
41
- Requires-Dist: cython; extra == "testing"
42
39
  Requires-Dist: pytest; extra == "testing"
43
40
  Dynamic: license-file
44
41
 
@@ -80,6 +77,13 @@ falling back to `humpy_toolz` otherwise.
80
77
  from humpy_tlz import curry, groupby, pipe
81
78
  ```
82
79
 
80
+ ## Standard library `operator` module is "curried"
81
+
82
+ ```python
83
+ from humpy_toolz.curried import operator
84
+ from humpy_cytoolz.curried import operator
85
+ ```
86
+
83
87
  ## Installation
84
88
 
85
89
  ```bash
@@ -36,6 +36,13 @@ falling back to `humpy_toolz` otherwise.
36
36
  from humpy_tlz import curry, groupby, pipe
37
37
  ```
38
38
 
39
+ ## Standard library `operator` module is "curried"
40
+
41
+ ```python
42
+ from humpy_toolz.curried import operator
43
+ from humpy_cytoolz.curried import operator
44
+ ```
45
+
39
46
  ## Installation
40
47
 
41
48
  ```bash
@@ -1,22 +1,20 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Z0Z_tools
3
- Version: 2.2.0
3
+ Version: 2.2.2
4
4
  Summary: Typing, documenting, and improving toolz and cytoolz.
5
5
  Author-email: Hunter Hogan <HunterHogan@pm.me>
6
6
  License-Expression: CC-BY-NC-4.0
7
+ Project-URL: Context7, https://context7.com/hunterhogan/z0z-tools
7
8
  Project-URL: Donate, https://www.patreon.com/integrated
9
+ Project-URL: Download, https://pypi.org/project/Z0Z_tools
8
10
  Project-URL: Homepage, https://github.com/hunterhogan/Z0Z_tools
9
11
  Project-URL: Issues, https://github.com/hunterhogan/Z0Z_tools/issues
10
12
  Project-URL: Repository, https://github.com/hunterhogan/Z0Z_tools.git
11
- Keywords: Python,cytoolz,filesystem,functional programming,tools,toolz
12
- Classifier: Development Status :: 5 - Production/Stable
13
+ Keywords: Python,cytoolz,functional programming,toolz
14
+ Classifier: Development Status :: 4 - Beta
13
15
  Classifier: Environment :: Console
14
16
  Classifier: Framework :: Pytest
15
17
  Classifier: Intended Audience :: Developers
16
- Classifier: Intended Audience :: Education
17
- Classifier: Intended Audience :: End Users/Desktop
18
- Classifier: Intended Audience :: Other Audience
19
- Classifier: Intended Audience :: Science/Research
20
18
  Classifier: Natural Language :: English
21
19
  Classifier: Operating System :: OS Independent
22
20
  Classifier: Programming Language :: Python
@@ -25,20 +23,19 @@ Classifier: Programming Language :: Python :: 3.11
25
23
  Classifier: Programming Language :: Python :: 3.12
26
24
  Classifier: Programming Language :: Python :: 3.13
27
25
  Classifier: Programming Language :: Python :: 3.14
28
- Classifier: Topic :: System :: Filesystems
29
- Classifier: Topic :: Text Processing
30
26
  Classifier: Topic :: Utilities
31
27
  Classifier: Typing :: Typed
32
28
  Requires-Python: >=3.10
33
29
  Description-Content-Type: text/markdown
34
30
  License-File: LICENSE
31
+ License-File: LICENSE-Rocklin
32
+ License-File: LICENSE-Welch
35
33
  Requires-Dist: typing_extensions>=4.10.0
36
34
  Provides-Extra: development
37
35
  Requires-Dist: astToolkit; extra == "development"
38
36
  Requires-Dist: hunterMakesPy; extra == "development"
39
37
  Requires-Dist: pytest-cov; extra == "development"
40
38
  Provides-Extra: testing
41
- Requires-Dist: cython; extra == "testing"
42
39
  Requires-Dist: pytest; extra == "testing"
43
40
  Dynamic: license-file
44
41
 
@@ -80,6 +77,13 @@ falling back to `humpy_toolz` otherwise.
80
77
  from humpy_tlz import curry, groupby, pipe
81
78
  ```
82
79
 
80
+ ## Standard library `operator` module is "curried"
81
+
82
+ ```python
83
+ from humpy_toolz.curried import operator
84
+ from humpy_cytoolz.curried import operator
85
+ ```
86
+
83
87
  ## Installation
84
88
 
85
89
  ```bash
@@ -1,4 +1,6 @@
1
1
  LICENSE
2
+ LICENSE-Rocklin
3
+ LICENSE-Welch
2
4
  README.md
3
5
  pyproject.toml
4
6
  Z0Z_tools/__init__.py
@@ -8,12 +10,12 @@ Z0Z_tools.egg-info/SOURCES.txt
8
10
  Z0Z_tools.egg-info/dependency_links.txt
9
11
  Z0Z_tools.egg-info/requires.txt
10
12
  Z0Z_tools.egg-info/top_level.txt
11
- humpy_cytoolz/Notice_of_Copyright.txt
12
13
  humpy_cytoolz/__init__.pxd
13
14
  humpy_cytoolz/__init__.py
14
15
  humpy_cytoolz/__init__.pyi
15
16
  humpy_cytoolz/_signatures.py
16
17
  humpy_cytoolz/_signatures.pyi
18
+ humpy_cytoolz/_theTypes.py
17
19
  humpy_cytoolz/cpython.pxd
18
20
  humpy_cytoolz/dicttoolz.c
19
21
  humpy_cytoolz/dicttoolz.pxd
@@ -61,30 +63,21 @@ humpy_cytoolz/tests/test_tlz.py
61
63
  humpy_cytoolz/tests/test_utils.py
62
64
  humpy_tlz/__init__.py
63
65
  humpy_tlz/_build_tlz.py
64
- humpy_toolz/Notice_of_Copyright.txt
65
66
  humpy_toolz/__init__.py
66
- humpy_toolz/__init__.pyi
67
67
  humpy_toolz/_signatures.py
68
+ humpy_toolz/_theTypes.py
68
69
  humpy_toolz/dicttoolz.py
69
70
  humpy_toolz/functoolz.py
70
- humpy_toolz/functoolz.pyi
71
71
  humpy_toolz/itertoolz.py
72
72
  humpy_toolz/py.typed
73
73
  humpy_toolz/recipes.py
74
- humpy_toolz/recipes.pyi
75
74
  humpy_toolz/utils.py
76
75
  humpy_toolz/curried/__init__.py
77
- humpy_toolz/curried/__init__.pyi
78
76
  humpy_toolz/curried/exceptions.py
79
- humpy_toolz/curried/exceptions.pyi
80
77
  humpy_toolz/curried/operator.py
81
- humpy_toolz/curried/operator.pyi
82
78
  humpy_toolz/sandbox/__init__.py
83
- humpy_toolz/sandbox/__init__.pyi
84
79
  humpy_toolz/sandbox/core.py
85
- humpy_toolz/sandbox/core.pyi
86
80
  humpy_toolz/sandbox/parallel.py
87
- humpy_toolz/sandbox/parallel.pyi
88
81
  humpy_toolz/sandbox/tests/__init__.py
89
82
  humpy_toolz/sandbox/tests/test_core.py
90
83
  humpy_toolz/sandbox/tests/test_parallel.py
@@ -6,5 +6,4 @@ hunterMakesPy
6
6
  pytest-cov
7
7
 
8
8
  [testing]
9
- cython
10
9
  pytest
@@ -12,8 +12,8 @@ from humpy_cytoolz.functoolz cimport (
12
12
 
13
13
 
14
14
  from humpy_cytoolz.dicttoolz cimport (
15
- assoc, c_merge, c_merge_with, c_dissoc, get_in, keyfilter, keymap,
16
- itemfilter, itemmap, update_in, valfilter, valmap, assoc_in)
15
+ assoc, assoc_in, c_dissoc, get_in, itemfilter, itemmap, keyfilter,
16
+ keymap, c_merge, c_merge_with, update_in, valfilter, valmap)
17
17
 
18
18
 
19
19
  from humpy_cytoolz.recipes cimport countby, partitionby
@@ -1,11 +1,13 @@
1
- from typing import Protocol
1
+ from typing import Generic, Protocol, TypeAlias, TypeVar
2
2
  import types
3
3
 
4
- class _AnyCallable[ReturnT](Protocol):
5
- def __call__(self, *args: object, **kwargs: object) -> ReturnT: ...
4
+ _ReturnT = TypeVar('_ReturnT')
6
5
 
7
- type Signature = _AnyCallable[object]
8
- type SignatureInfo = dict[str, list[Signature]]
6
+ class _AnyCallable(Protocol, Generic[_ReturnT]):
7
+ def __call__(self, *args: object, **kwargs: object) -> _ReturnT: ...
8
+
9
+ Signature: TypeAlias = _AnyCallable[object]
10
+ SignatureInfo: TypeAlias = dict[str, list[Signature]]
9
11
 
10
12
  cytoolz_info: dict[str, SignatureInfo]
11
13
  module_info: dict[types.ModuleType | str, SignatureInfo]
@@ -0,0 +1,68 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Hashable, Iterable, Sequence
4
+ from typing import Any, Protocol, TypeAlias, TypeVar
5
+ from typing_extensions import ParamSpec
6
+
7
+ _KT_contra = TypeVar('_KT_contra', contravariant=True)
8
+ _T_contra = TypeVar('_T_contra', contravariant=True)
9
+ _VT_co = TypeVar('_VT_co', covariant=True)
10
+
11
+ class Randomable(Protocol):
12
+ """Protocol for objects exposing a ``random() -> float`` method."""
13
+
14
+ def random(self) -> float: ...
15
+
16
+ class SupportsBool(Protocol):
17
+ """Objects supporting truth-value testing via ``__bool__``."""
18
+
19
+ def __bool__(self) -> bool: ...
20
+
21
+ class SupportsDunderGT(Protocol[_T_contra]):
22
+ """Objects supporting the ``__gt__`` operator."""
23
+
24
+ def __gt__(self, other: _T_contra, /) -> SupportsBool: ...
25
+
26
+ class SupportsDunderLT(Protocol[_T_contra]):
27
+ """Objects supporting the ``__lt__`` operator."""
28
+
29
+ def __lt__(self, other: _T_contra, /) -> SupportsBool: ...
30
+
31
+ class SupportsGetItem(Protocol[_KT_contra, _VT_co]):
32
+ """Objects supporting item access via ``__getitem__``."""
33
+
34
+ def __getitem__(self, key: _KT_contra, /) -> _VT_co: ...
35
+
36
+ SupportsRichComparison: TypeAlias = SupportsDunderLT[Any] | SupportsDunderGT[Any]
37
+
38
+ Instance_ = TypeVar("Instance_")
39
+ T_ = TypeVar("T_")
40
+ Instance = TypeVar("Instance")
41
+ K = TypeVar('K')
42
+ K0Hashable = TypeVar('K0Hashable', bound=Hashable)
43
+ K1 = TypeVar('K1')
44
+ K1Hashable = TypeVar('K1Hashable', bound=Hashable)
45
+ K2 = TypeVar('K2')
46
+ K3 = TypeVar('K3')
47
+ KHashable = TypeVar('KHashable', bound=Hashable)
48
+ L = TypeVar('L')
49
+ P = ParamSpec("P")
50
+ R = TypeVar('R')
51
+ S = TypeVar('S')
52
+ SSequence = TypeVar('SSequence', bound=Sequence[Any])
53
+ T = TypeVar('T')
54
+ T0 = TypeVar("T0")
55
+ T1 = TypeVar("T1")
56
+ T2 = TypeVar("T2")
57
+ T3 = TypeVar("T3")
58
+ T4 = TypeVar("T4")
59
+ T5 = TypeVar("T5")
60
+ T6 = TypeVar("T6")
61
+ TIterable = TypeVar('TIterable', bound=Iterable[Any])
62
+ TSupportsRichComparison = TypeVar('TSupportsRichComparison', bound=SupportsRichComparison)
63
+ U = TypeVar('U')
64
+ V = TypeVar('V')
65
+ V0 = TypeVar('V0')
66
+ V1 = TypeVar('V1')
67
+ V2 = TypeVar('V2')
68
+ V3 = TypeVar('V3')
@@ -0,0 +1,31 @@
1
+ from humpy_cytoolz._theTypes import K, V
2
+ from collections.abc import Callable, Mapping, MutableMapping
3
+ from typing import overload
4
+
5
+ __all__ = ["merge", "merge_with"]
6
+
7
+ @overload
8
+ def merge_with() -> Callable[..., dict[K, V] | MutableMapping[K, V]]: ...
9
+ @overload
10
+ def merge_with(func: Callable[[list[V]], V], /) -> Callable[..., dict[K, V] | MutableMapping[K, V]]: ...
11
+ @overload
12
+ def merge_with(func: Callable[[list[V]], V], d: Mapping[K, V], /) -> dict[K, V]: ...
13
+ @overload
14
+ def merge_with(func: Callable[[list[V]], V], d: Mapping[K, V], d2: Mapping[K, V], /, *dicts: Mapping[K, V]) -> dict[K, V]: ...
15
+ @overload
16
+ def merge_with(func: Callable[[list[V]], V], d: Mapping[K, V], d2: Mapping[K, V], /, *dicts: Mapping[K, V], factory: Callable[[], MutableMapping[K, V]]) -> MutableMapping[K, V]: ...
17
+ @overload
18
+ def merge_with(func: Callable[[list[V]], V], /, *, factory: Callable[[], MutableMapping[K, V]]) -> Callable[..., MutableMapping[K, V]]: ...
19
+ def merge_with(func: Callable[[list[V]], V] = ..., d: Mapping[K, V] = ..., *dicts: Mapping[K, V], factory: Callable[[], MutableMapping[K, V]] = ...) -> dict[K, V] | MutableMapping[K, V] | Callable[..., dict[K, V] | MutableMapping[K, V]]: ...
20
+
21
+ @overload
22
+ def merge() -> Callable[..., dict[K, V] | MutableMapping[K, V]]: ...
23
+ @overload
24
+ def merge(d: Mapping[K, V], /) -> dict[K, V]: ...
25
+ @overload
26
+ def merge(d: Mapping[K, V], d2: Mapping[K, V], /, *dicts: Mapping[K, V]) -> dict[K, V]: ...
27
+ @overload
28
+ def merge(d: Mapping[K, V], d2: Mapping[K, V], /, *dicts: Mapping[K, V], factory: Callable[[], MutableMapping[K, V]]) -> MutableMapping[K, V]: ...
29
+ @overload
30
+ def merge(*, factory: Callable[[], MutableMapping[K, V]]) -> Callable[..., MutableMapping[K, V]]: ...
31
+ def merge(d: Mapping[K, V] = ..., *dicts: Mapping[K, V], factory: Callable[[], MutableMapping[K, V]] = ...) -> dict[K, V] | MutableMapping[K, V] | Callable[..., dict[K, V] | MutableMapping[K, V]]: ...