quax-blocks 0.1__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.
- quax_blocks/__init__.py +236 -0
- quax_blocks/_src/__init__.py +3 -0
- quax_blocks/_src/binary.py +1777 -0
- quax_blocks/_src/container.py +130 -0
- quax_blocks/_src/copy.py +65 -0
- quax_blocks/_src/example.py +22 -0
- quax_blocks/_src/rich.py +385 -0
- quax_blocks/_src/round.py +221 -0
- quax_blocks/_src/unary.py +201 -0
- quax_blocks/_version.py +16 -0
- quax_blocks/_version.pyi +2 -0
- quax_blocks/py.typed +0 -0
- quax_blocks-0.1.dist-info/METADATA +183 -0
- quax_blocks-0.1.dist-info/RECORD +16 -0
- quax_blocks-0.1.dist-info/WHEEL +4 -0
- quax_blocks-0.1.dist-info/licenses/LICENSE +29 -0
quax_blocks/__init__.py
ADDED
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
"""Building blocks for Quax classes."""
|
|
2
|
+
|
|
3
|
+
# fmt: off
|
|
4
|
+
__all__ = [
|
|
5
|
+
################################################
|
|
6
|
+
"LaxComparisonMixin", "NumpyComparisonMixin", # rich comparison
|
|
7
|
+
# ----------
|
|
8
|
+
"LaxEqMixin", "NumpyEqMixin", # `__eq__`
|
|
9
|
+
"LaxNeMixin", "NumpyNeMixin", # `__ne__`
|
|
10
|
+
"LaxLtMixin", "NumpyLtMixin", # `__lt__`
|
|
11
|
+
"LaxLeMixin", "NumpyLeMixin", # `__le__`
|
|
12
|
+
"LaxGtMixin", "NumpyGtMixin", # `__gt__`
|
|
13
|
+
"LaxGeMixin", "NumpyGeMixin", # `__ge__`
|
|
14
|
+
##################################################
|
|
15
|
+
"LaxBinaryOpsMixin", "NumpyBinaryOpsMixin",
|
|
16
|
+
# ========== Float Operations ==========
|
|
17
|
+
"LaxMathMixin", "NumpyMathMixin",
|
|
18
|
+
# ----- add -----
|
|
19
|
+
"LaxBothAddMixin", "NumpyBothAddMixin",
|
|
20
|
+
"LaxAddMixin", "NumpyAddMixin", # __add__
|
|
21
|
+
"LaxRAddMixin", "NumpyRAddMixin", # __radd__
|
|
22
|
+
# ----- sub -----
|
|
23
|
+
"LaxBothSubMixin", "NumpyBothSubMixin",
|
|
24
|
+
"LaxSubMixin", "NumpySubMixin", # __sub__
|
|
25
|
+
"LaxRSubMixin", "NumpyRSubMixin", # __rsub__
|
|
26
|
+
# ----- mul -----
|
|
27
|
+
"LaxBothMulMixin", "NumpyBothMulMixin",
|
|
28
|
+
"LaxMulMixin", "NumpyMulMixin", # __mul__
|
|
29
|
+
"LaxRMulMixin", "NumpyRMulMixin", # __rmul__
|
|
30
|
+
# ---- matmul -----
|
|
31
|
+
"LaxBothMatMulMixin", "NumpyBothMatMulMixin",
|
|
32
|
+
"LaxMatMulMixin", "NumpyMatMulMixin", # __matmul__
|
|
33
|
+
"LaxRMatMulMixin", "NumpyRMatMulMixin", # __rmatmul__
|
|
34
|
+
# ----- truediv -----
|
|
35
|
+
"LaxBothTrueDivMixin", "NumpyBothTrueDivMixin",
|
|
36
|
+
"LaxTrueDivMixin", "NumpyTrueDivMixin", # __truediv__
|
|
37
|
+
"LaxRTrueDivMixin", "NumpyRTrueDivMixin", # __rtruediv__
|
|
38
|
+
# ----- floordiv -----
|
|
39
|
+
"LaxBothFloorDivMixin", "NumpyBothFloorDivMixin",
|
|
40
|
+
"LaxFloorDivMixin", "NumpyFloorDivMixin", # __floordiv__
|
|
41
|
+
"LaxRFloorDivMixin", "NumpyRFloorDivMixin", # __rfloordiv__
|
|
42
|
+
# ----- mod -----
|
|
43
|
+
"LaxBothModMixin", "NumpyBothModMixin",
|
|
44
|
+
"LaxModMixin", "NumpyModMixin", # __mod__
|
|
45
|
+
"LaxRModMixin", "NumpyRModMixin", # __rmod__
|
|
46
|
+
# ----- divmod -----
|
|
47
|
+
"NumpyBothDivModMixin",
|
|
48
|
+
# "LaxDivModMixin",
|
|
49
|
+
"NumpyDivModMixin",
|
|
50
|
+
# "LaxRDivModMixin",
|
|
51
|
+
"NumpyRDivModMixin",
|
|
52
|
+
# ----- pow -----
|
|
53
|
+
"LaxBothPowMixin", "NumpyBothPowMixin",
|
|
54
|
+
"LaxPowMixin", "NumpyPowMixin", # __pow__
|
|
55
|
+
"LaxRPowMixin", "NumpyRPowMixin", # __rpow__
|
|
56
|
+
# ========== Bitwise Operations ==========
|
|
57
|
+
"LaxBitwiseMixin", "NumpyBitwiseMixin",
|
|
58
|
+
# ----- lshift -----
|
|
59
|
+
"LaxBothLShiftMixin", "NumpyBothLShiftMixin",
|
|
60
|
+
"LaxLShiftMixin", "NumpyLShiftMixin", # __lshift__
|
|
61
|
+
"LaxRLShiftMixin", "NumpyRLShiftMixin", # __rlshift__
|
|
62
|
+
# ----- rshift -----
|
|
63
|
+
"LaxBothRShiftMixin", "NumpyBothRShiftMixin",
|
|
64
|
+
"LaxRShiftMixin", "NumpyRShiftMixin", # __rshift__
|
|
65
|
+
"LaxRRShiftMixin", "NumpyRRShiftMixin", # __rrshift__
|
|
66
|
+
# ----- and -----
|
|
67
|
+
"LaxBothAndMixin", "NumpyBothAndMixin",
|
|
68
|
+
"LaxAndMixin", "NumpyAndMixin", # __and__
|
|
69
|
+
"LaxRAndMixin", "NumpyRAndMixin", # __rand__
|
|
70
|
+
# ----- xor -----
|
|
71
|
+
"LaxBothXorMixin", "NumpyBothXorMixin",
|
|
72
|
+
"LaxXorMixin", "NumpyXorMixin", # __xor__
|
|
73
|
+
"LaxRXorMixin", "NumpyRXorMixin", # __rxor__
|
|
74
|
+
# ----- or -----
|
|
75
|
+
"LaxBothOrMixin", "NumpyBothOrMixin",
|
|
76
|
+
"LaxOrMixin", "NumpyOrMixin", # __or__
|
|
77
|
+
"LaxROrMixin", "NumpyROrMixin", # __ror__
|
|
78
|
+
##################################################
|
|
79
|
+
"LaxUnaryMixin", "NumpyUnaryMixin",
|
|
80
|
+
# ----------
|
|
81
|
+
"LaxPosMixin", "NumpyPosMixin", # __pos__
|
|
82
|
+
"LaxNegMixin", "NumpyNegMixin", # __neg__
|
|
83
|
+
"NumpyInvertMixin", # __invert__
|
|
84
|
+
"LaxAbsMixin", "NumpyAbsMixin", # __abs__
|
|
85
|
+
#################################################
|
|
86
|
+
"LaxRoundMixin", "NumpyRoundMixin", # __round__
|
|
87
|
+
"LaxTruncMixin", "NumpyTruncMixin", # __trunc__
|
|
88
|
+
"LaxFloorMixin", "NumpyFloorMixin", # __floor__
|
|
89
|
+
"LaxCeilMixin", "NumpyCeilMixin", # __ceil__
|
|
90
|
+
##################################################
|
|
91
|
+
"LaxLenMixin", "NumpyLenMixin", # __len__
|
|
92
|
+
"LaxLengthHintMixin", "NumpyLengthHintMixin", # __length_hint__
|
|
93
|
+
#################################################
|
|
94
|
+
"NumpyCopyMixin", # __copy__
|
|
95
|
+
"NumpyDeepCopyMixin", # __deepcopy__
|
|
96
|
+
]
|
|
97
|
+
# fmt: on
|
|
98
|
+
|
|
99
|
+
from ._src.binary import (
|
|
100
|
+
LaxAddMixin,
|
|
101
|
+
LaxAndMixin,
|
|
102
|
+
LaxBinaryOpsMixin,
|
|
103
|
+
LaxBitwiseMixin,
|
|
104
|
+
LaxBothAddMixin,
|
|
105
|
+
LaxBothAndMixin,
|
|
106
|
+
LaxBothFloorDivMixin,
|
|
107
|
+
LaxBothLShiftMixin,
|
|
108
|
+
LaxBothMatMulMixin,
|
|
109
|
+
LaxBothModMixin,
|
|
110
|
+
LaxBothMulMixin,
|
|
111
|
+
LaxBothOrMixin,
|
|
112
|
+
LaxBothPowMixin,
|
|
113
|
+
LaxBothRShiftMixin,
|
|
114
|
+
LaxBothSubMixin,
|
|
115
|
+
LaxBothTrueDivMixin,
|
|
116
|
+
LaxBothXorMixin,
|
|
117
|
+
LaxFloorDivMixin,
|
|
118
|
+
LaxLShiftMixin,
|
|
119
|
+
LaxMathMixin,
|
|
120
|
+
LaxMatMulMixin,
|
|
121
|
+
LaxModMixin,
|
|
122
|
+
LaxMulMixin,
|
|
123
|
+
LaxOrMixin,
|
|
124
|
+
LaxPowMixin,
|
|
125
|
+
LaxRAddMixin,
|
|
126
|
+
LaxRAndMixin,
|
|
127
|
+
LaxRFloorDivMixin,
|
|
128
|
+
LaxRLShiftMixin,
|
|
129
|
+
LaxRMatMulMixin,
|
|
130
|
+
LaxRModMixin,
|
|
131
|
+
LaxRMulMixin,
|
|
132
|
+
LaxROrMixin,
|
|
133
|
+
LaxRPowMixin,
|
|
134
|
+
LaxRRShiftMixin,
|
|
135
|
+
LaxRShiftMixin,
|
|
136
|
+
LaxRSubMixin,
|
|
137
|
+
LaxRTrueDivMixin,
|
|
138
|
+
LaxRXorMixin,
|
|
139
|
+
LaxSubMixin,
|
|
140
|
+
LaxTrueDivMixin,
|
|
141
|
+
LaxXorMixin,
|
|
142
|
+
NumpyAddMixin,
|
|
143
|
+
NumpyAndMixin,
|
|
144
|
+
NumpyBinaryOpsMixin,
|
|
145
|
+
NumpyBitwiseMixin,
|
|
146
|
+
NumpyBothAddMixin,
|
|
147
|
+
NumpyBothAndMixin,
|
|
148
|
+
NumpyBothDivModMixin,
|
|
149
|
+
NumpyBothFloorDivMixin,
|
|
150
|
+
NumpyBothLShiftMixin,
|
|
151
|
+
NumpyBothMatMulMixin,
|
|
152
|
+
NumpyBothModMixin,
|
|
153
|
+
NumpyBothMulMixin,
|
|
154
|
+
NumpyBothOrMixin,
|
|
155
|
+
NumpyBothPowMixin,
|
|
156
|
+
NumpyBothRShiftMixin,
|
|
157
|
+
NumpyBothSubMixin,
|
|
158
|
+
NumpyBothTrueDivMixin,
|
|
159
|
+
NumpyBothXorMixin,
|
|
160
|
+
NumpyDivModMixin,
|
|
161
|
+
NumpyFloorDivMixin,
|
|
162
|
+
NumpyLShiftMixin,
|
|
163
|
+
NumpyMathMixin,
|
|
164
|
+
NumpyMatMulMixin,
|
|
165
|
+
NumpyModMixin,
|
|
166
|
+
NumpyMulMixin,
|
|
167
|
+
NumpyOrMixin,
|
|
168
|
+
NumpyPowMixin,
|
|
169
|
+
NumpyRAddMixin,
|
|
170
|
+
NumpyRAndMixin,
|
|
171
|
+
NumpyRDivModMixin,
|
|
172
|
+
NumpyRFloorDivMixin,
|
|
173
|
+
NumpyRLShiftMixin,
|
|
174
|
+
NumpyRMatMulMixin,
|
|
175
|
+
NumpyRModMixin,
|
|
176
|
+
NumpyRMulMixin,
|
|
177
|
+
NumpyROrMixin,
|
|
178
|
+
NumpyRPowMixin,
|
|
179
|
+
NumpyRRShiftMixin,
|
|
180
|
+
NumpyRShiftMixin,
|
|
181
|
+
NumpyRSubMixin,
|
|
182
|
+
NumpyRTrueDivMixin,
|
|
183
|
+
NumpyRXorMixin,
|
|
184
|
+
NumpySubMixin,
|
|
185
|
+
NumpyTrueDivMixin,
|
|
186
|
+
NumpyXorMixin,
|
|
187
|
+
)
|
|
188
|
+
from ._src.container import (
|
|
189
|
+
LaxLengthHintMixin,
|
|
190
|
+
LaxLenMixin,
|
|
191
|
+
NumpyLengthHintMixin,
|
|
192
|
+
NumpyLenMixin,
|
|
193
|
+
)
|
|
194
|
+
from ._src.copy import (
|
|
195
|
+
NumpyCopyMixin,
|
|
196
|
+
NumpyDeepCopyMixin,
|
|
197
|
+
)
|
|
198
|
+
from ._src.example import AbstractVal # noqa: F401
|
|
199
|
+
from ._src.rich import (
|
|
200
|
+
LaxComparisonMixin,
|
|
201
|
+
LaxEqMixin,
|
|
202
|
+
LaxGeMixin,
|
|
203
|
+
LaxGtMixin,
|
|
204
|
+
LaxLeMixin,
|
|
205
|
+
LaxLtMixin,
|
|
206
|
+
LaxNeMixin,
|
|
207
|
+
NumpyComparisonMixin,
|
|
208
|
+
NumpyEqMixin,
|
|
209
|
+
NumpyGeMixin,
|
|
210
|
+
NumpyGtMixin,
|
|
211
|
+
NumpyLeMixin,
|
|
212
|
+
NumpyLtMixin,
|
|
213
|
+
NumpyNeMixin,
|
|
214
|
+
)
|
|
215
|
+
from ._src.round import (
|
|
216
|
+
LaxCeilMixin,
|
|
217
|
+
LaxFloorMixin,
|
|
218
|
+
LaxRoundMixin,
|
|
219
|
+
LaxTruncMixin,
|
|
220
|
+
NumpyCeilMixin,
|
|
221
|
+
NumpyFloorMixin,
|
|
222
|
+
NumpyRoundMixin,
|
|
223
|
+
NumpyTruncMixin,
|
|
224
|
+
)
|
|
225
|
+
from ._src.unary import (
|
|
226
|
+
LaxAbsMixin,
|
|
227
|
+
LaxNegMixin,
|
|
228
|
+
LaxPosMixin,
|
|
229
|
+
LaxUnaryMixin,
|
|
230
|
+
NumpyAbsMixin,
|
|
231
|
+
NumpyInvertMixin,
|
|
232
|
+
NumpyNegMixin,
|
|
233
|
+
NumpyPosMixin,
|
|
234
|
+
NumpyUnaryMixin,
|
|
235
|
+
)
|
|
236
|
+
from ._version import version as __version__ # noqa: F401
|