faster-eth-abi 5.2.8__cp312-cp312-win32.whl → 5.2.9__cp312-cp312-win32.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 faster-eth-abi might be problematic. Click here for more details.
- 76f9a3652d4d2667c55c__mypyc.cp312-win32.pyd +0 -0
- faster_eth_abi/_codec.cp312-win32.pyd +0 -0
- faster_eth_abi/_decoding.cp312-win32.pyd +0 -0
- faster_eth_abi/_decoding.py +14 -22
- faster_eth_abi/_encoding.cp312-win32.pyd +0 -0
- faster_eth_abi/abi.cp312-win32.pyd +0 -0
- faster_eth_abi/constants.cp312-win32.pyd +0 -0
- faster_eth_abi/decoding.py +30 -26
- faster_eth_abi/encoding.py +0 -2
- faster_eth_abi/from_type_str.cp312-win32.pyd +0 -0
- faster_eth_abi/packed.cp312-win32.pyd +0 -0
- faster_eth_abi/tools/__init__.cp312-win32.pyd +0 -0
- faster_eth_abi/tools/_strategies.cp312-win32.pyd +0 -0
- faster_eth_abi/utils/__init__.cp312-win32.pyd +0 -0
- faster_eth_abi/utils/numeric.cp312-win32.pyd +0 -0
- faster_eth_abi/utils/padding.cp312-win32.pyd +0 -0
- faster_eth_abi/utils/string.cp312-win32.pyd +0 -0
- faster_eth_abi/utils/validation.cp312-win32.pyd +0 -0
- {faster_eth_abi-5.2.8.dist-info → faster_eth_abi-5.2.9.dist-info}/METADATA +1 -1
- faster_eth_abi-5.2.9.dist-info/RECORD +44 -0
- faster_eth_abi-5.2.8.dist-info/RECORD +0 -44
- {faster_eth_abi-5.2.8.dist-info → faster_eth_abi-5.2.9.dist-info}/WHEEL +0 -0
- {faster_eth_abi-5.2.8.dist-info → faster_eth_abi-5.2.9.dist-info}/licenses/LICENSE +0 -0
- {faster_eth_abi-5.2.8.dist-info → faster_eth_abi-5.2.9.dist-info}/top_level.txt +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
faster_eth_abi/_decoding.py
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
from typing import (
|
|
2
2
|
TYPE_CHECKING,
|
|
3
3
|
Any,
|
|
4
|
-
Optional,
|
|
5
4
|
Tuple,
|
|
6
5
|
)
|
|
7
6
|
|
|
7
|
+
from faster_eth_utils import (
|
|
8
|
+
big_endian_to_int,
|
|
9
|
+
)
|
|
10
|
+
|
|
8
11
|
from faster_eth_abi.exceptions import (
|
|
9
12
|
InsufficientDataBytes,
|
|
10
13
|
)
|
|
@@ -20,31 +23,20 @@ if TYPE_CHECKING:
|
|
|
20
23
|
HeadTailDecoder,
|
|
21
24
|
SizedArrayDecoder,
|
|
22
25
|
TupleDecoder,
|
|
23
|
-
UnsignedIntegerDecoder,
|
|
24
26
|
)
|
|
25
27
|
|
|
26
28
|
|
|
27
|
-
_UINT256_DECODER: Optional["UnsignedIntegerDecoder"] = None
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
def __set_uint256_decoder() -> "UnsignedIntegerDecoder":
|
|
31
|
-
# this helper breaks a circular dependency on the non-compiled decoding module
|
|
32
|
-
from . import (
|
|
33
|
-
decoding,
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
global _UINT256_DECODER
|
|
37
|
-
_UINT256_DECODER = decoding.decode_uint_256
|
|
38
|
-
|
|
39
|
-
return _UINT256_DECODER
|
|
40
|
-
|
|
41
|
-
|
|
42
29
|
def decode_uint_256(stream: ContextFramesBytesIO) -> int:
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
30
|
+
"""
|
|
31
|
+
This function is a faster version of decode_uint_256 in decoding.py.
|
|
32
|
+
|
|
33
|
+
It recreates the logic from the UnsignedIntegerDecoder, but we can
|
|
34
|
+
skip a lot because we know the value of many vars.
|
|
35
|
+
"""
|
|
36
|
+
# read data from stream
|
|
37
|
+
if len(data := stream.read(32)) == 32:
|
|
38
|
+
return big_endian_to_int(data) # type: ignore [no-any-return]
|
|
39
|
+
raise InsufficientDataBytes(f"Tried to read 32 bytes, only got {len(data)} bytes.")
|
|
48
40
|
|
|
49
41
|
|
|
50
42
|
# HeadTailDecoder
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
faster_eth_abi/decoding.py
CHANGED
|
@@ -98,14 +98,14 @@ class TupleDecoder(BaseDecoder):
|
|
|
98
98
|
def __init__(self, decoders: Tuple[BaseDecoder, ...], **kwargs: Any) -> None:
|
|
99
99
|
super().__init__(**kwargs)
|
|
100
100
|
|
|
101
|
-
self.decoders = tuple(
|
|
101
|
+
self.decoders = decoders = tuple(
|
|
102
102
|
HeadTailDecoder(tail_decoder=d) if getattr(d, "is_dynamic", False) else d
|
|
103
103
|
for d in decoders
|
|
104
104
|
)
|
|
105
105
|
|
|
106
|
-
self.is_dynamic = any(getattr(d, "is_dynamic", False) for d in
|
|
106
|
+
self.is_dynamic = any(getattr(d, "is_dynamic", False) for d in decoders)
|
|
107
107
|
self.len_of_head = sum(
|
|
108
|
-
getattr(decoder, "array_size", 1) for decoder in
|
|
108
|
+
getattr(decoder, "array_size", 1) for decoder in decoders
|
|
109
109
|
)
|
|
110
110
|
|
|
111
111
|
def validate(self) -> None:
|
|
@@ -173,9 +173,10 @@ class SingleDecoder(BaseDecoder):
|
|
|
173
173
|
def decode(self, stream):
|
|
174
174
|
raw_data = self.read_data_from_stream(stream)
|
|
175
175
|
data, padding_bytes = self.split_data_and_padding(raw_data)
|
|
176
|
-
|
|
176
|
+
decoder_fn = self.decoder_fn
|
|
177
|
+
if decoder_fn is None:
|
|
177
178
|
raise AssertionError("`decoder_fn` is None")
|
|
178
|
-
value =
|
|
179
|
+
value = decoder_fn(data)
|
|
179
180
|
self.validate_padding_bytes(value, padding_bytes)
|
|
180
181
|
|
|
181
182
|
return value
|
|
@@ -190,16 +191,15 @@ class SingleDecoder(BaseDecoder):
|
|
|
190
191
|
|
|
191
192
|
|
|
192
193
|
class BaseArrayDecoder(BaseDecoder):
|
|
193
|
-
item_decoder = None
|
|
194
|
+
item_decoder: BaseDecoder = None
|
|
194
195
|
|
|
195
196
|
def __init__(self, **kwargs: Any) -> None:
|
|
196
197
|
super().__init__(**kwargs)
|
|
197
198
|
|
|
198
199
|
# Use a head-tail decoder to decode dynamic elements
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
)
|
|
200
|
+
item_decoder = self.item_decoder
|
|
201
|
+
if item_decoder.is_dynamic:
|
|
202
|
+
self.item_decoder = HeadTailDecoder(tail_decoder=item_decoder)
|
|
203
203
|
|
|
204
204
|
def validate(self) -> None:
|
|
205
205
|
super().validate()
|
|
@@ -280,21 +280,23 @@ class FixedByteSizeDecoder(SingleDecoder):
|
|
|
280
280
|
def validate(self) -> None:
|
|
281
281
|
super().validate()
|
|
282
282
|
|
|
283
|
-
|
|
283
|
+
value_bit_size = self.value_bit_size
|
|
284
|
+
if value_bit_size is None:
|
|
284
285
|
raise ValueError("`value_bit_size` may not be None")
|
|
285
|
-
|
|
286
|
+
data_byte_size = self.data_byte_size
|
|
287
|
+
if data_byte_size is None:
|
|
286
288
|
raise ValueError("`data_byte_size` may not be None")
|
|
287
289
|
if self.decoder_fn is None:
|
|
288
290
|
raise ValueError("`decoder_fn` may not be None")
|
|
289
291
|
if self.is_big_endian is None:
|
|
290
292
|
raise ValueError("`is_big_endian` may not be None")
|
|
291
293
|
|
|
292
|
-
if
|
|
294
|
+
if value_bit_size % 8 != 0:
|
|
293
295
|
raise ValueError(
|
|
294
|
-
"Invalid value bit size: {
|
|
296
|
+
f"Invalid value bit size: {value_bit_size}. Must be a multiple of 8"
|
|
295
297
|
)
|
|
296
298
|
|
|
297
|
-
if
|
|
299
|
+
if value_bit_size > data_byte_size * 8:
|
|
298
300
|
raise ValueError("Value byte size exceeds data size")
|
|
299
301
|
|
|
300
302
|
def read_data_from_stream(self, stream: ContextFramesBytesIO) -> bytes:
|
|
@@ -322,9 +324,8 @@ class FixedByteSizeDecoder(SingleDecoder):
|
|
|
322
324
|
f"Padding bytes were not empty: {padding_bytes!r}"
|
|
323
325
|
)
|
|
324
326
|
|
|
325
|
-
def _get_value_byte_size(self):
|
|
326
|
-
|
|
327
|
-
return value_byte_size
|
|
327
|
+
def _get_value_byte_size(self) -> int:
|
|
328
|
+
return self.value_bit_size // 8
|
|
328
329
|
|
|
329
330
|
|
|
330
331
|
class Fixed32ByteSizeDecoder(FixedByteSizeDecoder):
|
|
@@ -336,7 +337,7 @@ class BooleanDecoder(Fixed32ByteSizeDecoder):
|
|
|
336
337
|
is_big_endian = True
|
|
337
338
|
|
|
338
339
|
@staticmethod
|
|
339
|
-
def decoder_fn(data):
|
|
340
|
+
def decoder_fn(data: bytes) -> bool:
|
|
340
341
|
if data == b"\x00":
|
|
341
342
|
return False
|
|
342
343
|
elif data == b"\x01":
|
|
@@ -384,8 +385,9 @@ class SignedIntegerDecoder(Fixed32ByteSizeDecoder):
|
|
|
384
385
|
|
|
385
386
|
def decoder_fn(self, data):
|
|
386
387
|
value = big_endian_to_int(data)
|
|
387
|
-
|
|
388
|
-
|
|
388
|
+
value_bit_size = self.value_bit_size
|
|
389
|
+
if value >= 2 ** (value_bit_size - 1):
|
|
390
|
+
return value - 2**value_bit_size
|
|
389
391
|
else:
|
|
390
392
|
return value
|
|
391
393
|
|
|
@@ -424,16 +426,17 @@ class BytesDecoder(Fixed32ByteSizeDecoder):
|
|
|
424
426
|
|
|
425
427
|
|
|
426
428
|
class BaseFixedDecoder(Fixed32ByteSizeDecoder):
|
|
427
|
-
frac_places = None
|
|
429
|
+
frac_places: int = None
|
|
428
430
|
is_big_endian = True
|
|
429
431
|
|
|
430
432
|
def validate(self) -> None:
|
|
431
433
|
super().validate()
|
|
432
434
|
|
|
433
|
-
|
|
435
|
+
frac_places = self.frac_places
|
|
436
|
+
if frac_places is None:
|
|
434
437
|
raise ValueError("must specify `frac_places`")
|
|
435
438
|
|
|
436
|
-
if
|
|
439
|
+
if frac_places <= 0 or frac_places > 80:
|
|
437
440
|
raise ValueError("`frac_places` must be in range (0, 80]")
|
|
438
441
|
|
|
439
442
|
|
|
@@ -456,8 +459,9 @@ class UnsignedFixedDecoder(BaseFixedDecoder):
|
|
|
456
459
|
class SignedFixedDecoder(BaseFixedDecoder):
|
|
457
460
|
def decoder_fn(self, data):
|
|
458
461
|
value = big_endian_to_int(data)
|
|
459
|
-
|
|
460
|
-
|
|
462
|
+
value_bit_size = self.value_bit_size
|
|
463
|
+
if value >= 2 ** (value_bit_size - 1):
|
|
464
|
+
signed_value = value - 2**value_bit_size
|
|
461
465
|
else:
|
|
462
466
|
signed_value = value
|
|
463
467
|
|
faster_eth_abi/encoding.py
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: faster_eth_abi
|
|
3
|
-
Version: 5.2.
|
|
3
|
+
Version: 5.2.9
|
|
4
4
|
Summary: A faster fork of eth_abi: Python utilities for working with Ethereum ABI definitions, especially encoding and decoding. Implemented in C.
|
|
5
5
|
Home-page: https://github.com/BobTheBuidler/faster-eth-abi
|
|
6
6
|
Author: The Ethereum Foundation
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
76f9a3652d4d2667c55c__mypyc.cp312-win32.pyd,sha256=ueVfYNVuVx7SwMOuVuQ7dNhA0D6arBNh4vvK-ntEBWU,141824
|
|
2
|
+
faster_eth_abi/__init__.py,sha256=JpTfPTiusUGMmX8sEsGAxvILxFbvhh3MEyfiKOd5o9g,217
|
|
3
|
+
faster_eth_abi/_codec.cp312-win32.pyd,sha256=vbz9Y7A_em61ZXGl31z-kWorbrZkZQO3M0-LvTyvYis,9216
|
|
4
|
+
faster_eth_abi/_codec.py,sha256=fLRvqvrD8F38U4m1wZztvx-7JJbZaPikwXS5u9BzY14,2509
|
|
5
|
+
faster_eth_abi/_decoding.cp312-win32.pyd,sha256=R7w0qumxw9RunbZ1PqSWl_acq_r-etY3kvSYZTe3a1Y,9216
|
|
6
|
+
faster_eth_abi/_decoding.py,sha256=GeXe2OaAmojlnGbw3CmSzKK9k5g0QLLn_Qesz7y98X0,3208
|
|
7
|
+
faster_eth_abi/_encoding.cp312-win32.pyd,sha256=r8VsX80Efa0JOnMjS0XocUA8GdJgjhjBWzJP_xVtZlg,9216
|
|
8
|
+
faster_eth_abi/_encoding.py,sha256=157A_MltVLCEwBmD7SB8UaKXkAOtIKC5MVupk6dk_yA,3217
|
|
9
|
+
faster_eth_abi/abi.cp312-win32.pyd,sha256=wPD4fytip2j54Ssn_90l-dU3hy6b8iDevqz_y_syxCg,9216
|
|
10
|
+
faster_eth_abi/abi.py,sha256=-t9OVBSCxy6SuWpCu3cxHrCqkx8_svPIRb0MSFXEl5Q,383
|
|
11
|
+
faster_eth_abi/base.py,sha256=y4IXpQJWGfUISl3xjCO420Grxido3tE2ebPV2rK-DvM,1229
|
|
12
|
+
faster_eth_abi/codec.py,sha256=e1uO8BJrXRn0Ih70eUa5qipD2wcg2aZSR4fyVuGpFoY,4580
|
|
13
|
+
faster_eth_abi/constants.cp312-win32.pyd,sha256=9JIPZlhitgJE7hjdWbVnBp2DAw_FyLiBAvoynccZSc8,9216
|
|
14
|
+
faster_eth_abi/constants.py,sha256=q3FGynS-Eb78cnrL6mBoAvTDz16PF3tW2OylTMd6ajs,114
|
|
15
|
+
faster_eth_abi/decoding.py,sha256=LUyG3EO6K4O6u1020FVMNEB80TwW2aHy6gInHoW5qy8,17632
|
|
16
|
+
faster_eth_abi/encoding.py,sha256=P1svhYylcZa55cQ9LPj6jV8iJVLSL_c5SIZT1Umol58,19679
|
|
17
|
+
faster_eth_abi/exceptions.py,sha256=KzNYRc9t0CvlkveozWvLeo1WC_GarcBkwzV67aY_5yI,3067
|
|
18
|
+
faster_eth_abi/from_type_str.cp312-win32.pyd,sha256=SlBiUD7o19yxu8BY4SOkg8p8pt4-nDZMSTSWGkJqkEE,9216
|
|
19
|
+
faster_eth_abi/from_type_str.py,sha256=WLRP3OIyrJORgloX-7V0x2KdrZj0kLay-J9I8f-H36s,4446
|
|
20
|
+
faster_eth_abi/grammar.py,sha256=lhEmp3ZwMTzm1-jJiMUVD4zrBgU4MEZCRiND4WxfOes,13839
|
|
21
|
+
faster_eth_abi/io.py,sha256=E_QX7aYAjGYnkNAZmJMmSmx1lqvl_FDNmMFruTi9UX4,3831
|
|
22
|
+
faster_eth_abi/packed.cp312-win32.pyd,sha256=AJaLBNxl6Q0RVjrGj4bjBlj5sEnDNi429frkc7JkUNw,9216
|
|
23
|
+
faster_eth_abi/packed.py,sha256=RZ2chvsx9_AL9OxY1ixHTsaUJHaR_tmrNdViOIp-xSg,316
|
|
24
|
+
faster_eth_abi/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
+
faster_eth_abi/registry.py,sha256=gU5-k_1eYUjs7-NAKoH9nncCJ36tZZHM5ZXvwmXt0cw,21192
|
|
26
|
+
faster_eth_abi/tools/__init__.cp312-win32.pyd,sha256=WJztfmuPySeDxzKaBXbnReVuu3rKTHvbyAMZJL0MQWo,9216
|
|
27
|
+
faster_eth_abi/tools/__init__.py,sha256=jxyQnb34ldRjCTYi3Ajb5h5QlFQ6ODfKQNhOCVwR7Ao,54
|
|
28
|
+
faster_eth_abi/tools/_strategies.cp312-win32.pyd,sha256=a9i-sNYn0-SIrd0Yfaws0_kSGxHXneGdxm2c8XM_1jc,9216
|
|
29
|
+
faster_eth_abi/tools/_strategies.py,sha256=HCFdQFLa84SMf7Deui2-szTH34hxTfc0Rog_kmpTg_w,6197
|
|
30
|
+
faster_eth_abi/utils/__init__.cp312-win32.pyd,sha256=zQeiMsqdC_Ta14sTnwJhYWY1_78jpmAzu307D_NEJ2c,9216
|
|
31
|
+
faster_eth_abi/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
+
faster_eth_abi/utils/numeric.cp312-win32.pyd,sha256=Go_fAjaOKxd3Sjzy0wb30HmLHr9bB5fx8C_7o41bXtk,9216
|
|
33
|
+
faster_eth_abi/utils/numeric.py,sha256=hNGble1NA99_5hrAOnH0ZakCuHc6PFMC1p0olmpo_vM,2232
|
|
34
|
+
faster_eth_abi/utils/padding.cp312-win32.pyd,sha256=XADVomvWM8MKFfH30HdkmLx23iiDOeOimnKyy0K6Ees,9216
|
|
35
|
+
faster_eth_abi/utils/padding.py,sha256=k6dkOiQ3k0OhQUZ6blCiL1VOQVYGyynucafbySjcFfY,515
|
|
36
|
+
faster_eth_abi/utils/string.cp312-win32.pyd,sha256=TKuhU_OlwgG1Gbr97wQGNHj9qO1fLtQKTdS6ZbqSOLo,9216
|
|
37
|
+
faster_eth_abi/utils/string.py,sha256=wYcvWof4kuitrGGSe_NOduQaxE4HHYmpraCPXKcZxMs,455
|
|
38
|
+
faster_eth_abi/utils/validation.cp312-win32.pyd,sha256=01vor8ptTweDQkbOiPEY8XrfM08JAYKdYtWDB2V1SC8,9216
|
|
39
|
+
faster_eth_abi/utils/validation.py,sha256=9veO7wyQsmcFgeaGrsKdSifjV1gaXfTDDKAt1EbKHYY,539
|
|
40
|
+
faster_eth_abi-5.2.9.dist-info/licenses/LICENSE,sha256=Q1lDDWXR057JL2Y7HTAwclCF32_LCloN4sGUkXO1YeI,1127
|
|
41
|
+
faster_eth_abi-5.2.9.dist-info/METADATA,sha256=KDOT00QI4vuhhmIEyht-d1iYsmyvKLtq9xwMBQqxhzg,5498
|
|
42
|
+
faster_eth_abi-5.2.9.dist-info/WHEEL,sha256=LwxTQZ0gyDP_uaeNCLm-ZIktY9hv6x0e22Q-hgFd-po,97
|
|
43
|
+
faster_eth_abi-5.2.9.dist-info/top_level.txt,sha256=CO2FQwf61aFzjYze7Wywa5KQdJ6bbLkzDoGEjDF2g9o,43
|
|
44
|
+
faster_eth_abi-5.2.9.dist-info/RECORD,,
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
76f9a3652d4d2667c55c__mypyc.cp312-win32.pyd,sha256=Xxhsx7QljUKyv79QMkvJIKhflyJVooVeLzfGoCNfO-U,141824
|
|
2
|
-
faster_eth_abi/__init__.py,sha256=JpTfPTiusUGMmX8sEsGAxvILxFbvhh3MEyfiKOd5o9g,217
|
|
3
|
-
faster_eth_abi/_codec.cp312-win32.pyd,sha256=5IRNgZkWdpQ2PbFUSJNSNLqTfLGN-xrnMqwp0pily7k,9216
|
|
4
|
-
faster_eth_abi/_codec.py,sha256=fLRvqvrD8F38U4m1wZztvx-7JJbZaPikwXS5u9BzY14,2509
|
|
5
|
-
faster_eth_abi/_decoding.cp312-win32.pyd,sha256=7pp8XwwRZJFKcA6rlxT2b4xNxZLf-_4hGce_e0mGxq4,9216
|
|
6
|
-
faster_eth_abi/_decoding.py,sha256=uhteNEJzs873MqIOxc68XuFnKOhsUH0CJcQFLbL0Q18,3264
|
|
7
|
-
faster_eth_abi/_encoding.cp312-win32.pyd,sha256=Rj4dJGMpiM3J_P3NNhB-ykeL4nvVM8D5UgnC-P2p8u8,9216
|
|
8
|
-
faster_eth_abi/_encoding.py,sha256=157A_MltVLCEwBmD7SB8UaKXkAOtIKC5MVupk6dk_yA,3217
|
|
9
|
-
faster_eth_abi/abi.cp312-win32.pyd,sha256=n1aGjG91zSXphsWBARZB5bkPAcv6diWaLVVQPc2Xnqw,9216
|
|
10
|
-
faster_eth_abi/abi.py,sha256=-t9OVBSCxy6SuWpCu3cxHrCqkx8_svPIRb0MSFXEl5Q,383
|
|
11
|
-
faster_eth_abi/base.py,sha256=y4IXpQJWGfUISl3xjCO420Grxido3tE2ebPV2rK-DvM,1229
|
|
12
|
-
faster_eth_abi/codec.py,sha256=e1uO8BJrXRn0Ih70eUa5qipD2wcg2aZSR4fyVuGpFoY,4580
|
|
13
|
-
faster_eth_abi/constants.cp312-win32.pyd,sha256=koVO-lOFWZRq89SMZnt2NgSkT0r6Xxlbi2LmqasHuQ8,9216
|
|
14
|
-
faster_eth_abi/constants.py,sha256=q3FGynS-Eb78cnrL6mBoAvTDz16PF3tW2OylTMd6ajs,114
|
|
15
|
-
faster_eth_abi/decoding.py,sha256=-2P8kAaHM1HFYS5b8QKstStO6PkWlugEaDUoujX1Uf0,17447
|
|
16
|
-
faster_eth_abi/encoding.py,sha256=bKw8wCqpfv8U83I2xsmiI37wn2lQUIhn4bn1xS_l1Zc,19704
|
|
17
|
-
faster_eth_abi/exceptions.py,sha256=KzNYRc9t0CvlkveozWvLeo1WC_GarcBkwzV67aY_5yI,3067
|
|
18
|
-
faster_eth_abi/from_type_str.cp312-win32.pyd,sha256=ug3T-S2CEHoxDax-7iABKvKInNQYhAouEVKLTC148Kk,9216
|
|
19
|
-
faster_eth_abi/from_type_str.py,sha256=WLRP3OIyrJORgloX-7V0x2KdrZj0kLay-J9I8f-H36s,4446
|
|
20
|
-
faster_eth_abi/grammar.py,sha256=lhEmp3ZwMTzm1-jJiMUVD4zrBgU4MEZCRiND4WxfOes,13839
|
|
21
|
-
faster_eth_abi/io.py,sha256=E_QX7aYAjGYnkNAZmJMmSmx1lqvl_FDNmMFruTi9UX4,3831
|
|
22
|
-
faster_eth_abi/packed.cp312-win32.pyd,sha256=croZnY0etq_cXRcfbFskwxNr8e5iSl2co6adIGC1Ui8,9216
|
|
23
|
-
faster_eth_abi/packed.py,sha256=RZ2chvsx9_AL9OxY1ixHTsaUJHaR_tmrNdViOIp-xSg,316
|
|
24
|
-
faster_eth_abi/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
-
faster_eth_abi/registry.py,sha256=gU5-k_1eYUjs7-NAKoH9nncCJ36tZZHM5ZXvwmXt0cw,21192
|
|
26
|
-
faster_eth_abi/tools/__init__.cp312-win32.pyd,sha256=4q8FQ8ylczBj1D2Noh3CmDp1LlP-7iv-oQR-JHeE3PM,9216
|
|
27
|
-
faster_eth_abi/tools/__init__.py,sha256=jxyQnb34ldRjCTYi3Ajb5h5QlFQ6ODfKQNhOCVwR7Ao,54
|
|
28
|
-
faster_eth_abi/tools/_strategies.cp312-win32.pyd,sha256=MeOgxGq6qui7FgeV8uZgS2Db_jOt52x1VwSw3Z9Rtpk,9216
|
|
29
|
-
faster_eth_abi/tools/_strategies.py,sha256=HCFdQFLa84SMf7Deui2-szTH34hxTfc0Rog_kmpTg_w,6197
|
|
30
|
-
faster_eth_abi/utils/__init__.cp312-win32.pyd,sha256=FrbtjgXbUDjki9DVZdJAwfy5fyZa_ivSivHRl3oxAfA,9216
|
|
31
|
-
faster_eth_abi/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
-
faster_eth_abi/utils/numeric.cp312-win32.pyd,sha256=XimFOXaljSTEZvWXY_J2FhVCo5v9olcOHbBQuVXOtjI,9216
|
|
33
|
-
faster_eth_abi/utils/numeric.py,sha256=hNGble1NA99_5hrAOnH0ZakCuHc6PFMC1p0olmpo_vM,2232
|
|
34
|
-
faster_eth_abi/utils/padding.cp312-win32.pyd,sha256=UUsB3BW2cGDeBmFOX3UKux4w6zuvq2ij-22zb5fdnbw,9216
|
|
35
|
-
faster_eth_abi/utils/padding.py,sha256=k6dkOiQ3k0OhQUZ6blCiL1VOQVYGyynucafbySjcFfY,515
|
|
36
|
-
faster_eth_abi/utils/string.cp312-win32.pyd,sha256=Lh_K1WDZeooXVis54IoKSo-4f1lMmgkqnVF_abPzJY8,9216
|
|
37
|
-
faster_eth_abi/utils/string.py,sha256=wYcvWof4kuitrGGSe_NOduQaxE4HHYmpraCPXKcZxMs,455
|
|
38
|
-
faster_eth_abi/utils/validation.cp312-win32.pyd,sha256=4MTQ80A936KFecNsDhqK1-s5HJeiKPP2iAf_G3JrJgM,9216
|
|
39
|
-
faster_eth_abi/utils/validation.py,sha256=9veO7wyQsmcFgeaGrsKdSifjV1gaXfTDDKAt1EbKHYY,539
|
|
40
|
-
faster_eth_abi-5.2.8.dist-info/licenses/LICENSE,sha256=Q1lDDWXR057JL2Y7HTAwclCF32_LCloN4sGUkXO1YeI,1127
|
|
41
|
-
faster_eth_abi-5.2.8.dist-info/METADATA,sha256=agDHiYtBw2nohnY27Giw4FZyWqckmorKNR7uWalGkFg,5498
|
|
42
|
-
faster_eth_abi-5.2.8.dist-info/WHEEL,sha256=LwxTQZ0gyDP_uaeNCLm-ZIktY9hv6x0e22Q-hgFd-po,97
|
|
43
|
-
faster_eth_abi-5.2.8.dist-info/top_level.txt,sha256=CO2FQwf61aFzjYze7Wywa5KQdJ6bbLkzDoGEjDF2g9o,43
|
|
44
|
-
faster_eth_abi-5.2.8.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|