Python bindings to Rust's persistent data structures (rpds)
Project description
Python bindings to the Rust rpds crate.
What’s here is quite minimal (in transparency, it was written initially to support replacing pyrsistent in the referencing library). If you see something missing (which is very likely), a PR is definitely welcome to add it.
Methods in general are named similarly to their rpds counterparts (rather than pyrsistent‘s conventions, though probably a full drop-in pyrsistent-compatible wrapper module is a good addition at some point).
>>> from rpds import HashTrieMap, HashTrieSet, List
>>> m = HashTrieMap({"foo": "bar", "baz": "quux"})
>>> m.insert("spam", 37) == HashTrieMap({"foo": "bar", "baz": "quux", "spam": 37})
True
>>> m.remove("foo") == HashTrieMap({"baz": "quux"})
True
>>> s = HashTrieSet({"foo", "bar", "baz", "quux"})
>>> s.insert("spam") == HashTrieSet({"foo", "bar", "baz", "quux", "spam"})
True
>>> s.remove("foo") == HashTrieSet({"bar", "baz", "quux"})
True
>>> L = List([1, 3, 5])
>>> L.push_front(-1) == List([-1, 1, 3, 5])
True
>>> L.rest == List([3, 5])
True
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file rpds_py-0.6.0.tar.gz
.
File metadata
- Download URL: rpds_py-0.6.0.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd14a6a5623673860835b136b3c95abca535c170e93c4859f558b5cb083edc8a |
|
MD5 | 2d3fefc34e266c5cb9bc567e306607c9 |
|
BLAKE2b-256 | 7cc9209779b207bebadf2634266fe4c559be81961cbee9b33cde9f22a84fbfa7 |
File details
Details for the file rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e167d7d9c2f6bd1c42af1b5f5b417799ebdb4cf7f449dbc2d553dcc63deddc63 |
|
MD5 | aeb6532b5084e2eb7d5a8c32f1fa1bdd |
|
BLAKE2b-256 | 0a018a132045279974cde2dc6fc7e21c1f27e3f48ebc3d2d93276cc39bdfd7b7 |
File details
Details for the file rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 1.3 MB
- Tags: PyPy, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5785afa67e5623e8ad73863ad95d0342e14b7ed3df2775ac1b57e545448c3d5b |
|
MD5 | 43f8c9b37b6e4e5f5423f47286b77689 |
|
BLAKE2b-256 | 28959589b02af2095a87acf8b804cf58bf40ef37788097a340dc5a8f165e9925 |
File details
Details for the file rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 1.3 MB
- Tags: PyPy, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3fc016c51b20322969bd588b9822ec5c9c309423f5d1409779f8dc43b7162301 |
|
MD5 | ffdce59fb7575cebfe2d41852ca15598 |
|
BLAKE2b-256 | d825b885ce3b3fd7da91f6cc83e6386d09e7138957b5d599783bd5726fbb4046 |
File details
Details for the file rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36c756749c33503868643faedc2256accd349118e5ad59cdf1bf7f71c340a18b |
|
MD5 | fe0d0d8283944226e1a01d62fdcec4cb |
|
BLAKE2b-256 | 2d38317a705f269b9361cf7c71a0f3bd90a89f9565fee24be54ddc2a50325761 |
File details
Details for the file rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13955672b0cadb14956fc0868f7cc43433da01a4a549cea59385faeddf5dacbe |
|
MD5 | 42e9999144f8ceb03b5583fd739e06bd |
|
BLAKE2b-256 | db0b696689606a41e879cd79a2fae487527428c7ec9937be3fe427ac952c57ef |
File details
Details for the file rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl
- Upload date:
- Size: 1.2 MB
- Tags: PyPy, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 888291e5108b0b799fb192e2309fc72ea000de5f6bf9c378564a2fec995d0c59 |
|
MD5 | 848772ebf909d7b0d3e9972d915611b6 |
|
BLAKE2b-256 | 0c1295b27282d167bfadf306a85efe6281b7daef2e23ce11c34a8f0bc7dfce64 |
File details
Details for the file rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5c8ba7f1c9449edcf5b0b4fd1dc5fdfed768fb807e8a2f2777f80677f6c165e |
|
MD5 | 6f0074d97d41413170d60431bc380a85 |
|
BLAKE2b-256 | 72dc980f067f1f1f67e76d36e508f9d90ac8a855a44d98f3d21cfd5a1ae88b1a |
File details
Details for the file rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 1.3 MB
- Tags: PyPy, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbd890bf72eb38b8e9a098bae1095f4a66e4acded34cf2c1e9c0840ddc44b4f0 |
|
MD5 | a8b0b0561cc2d3ce2574c71bddc81df0 |
|
BLAKE2b-256 | a00daec511a34765659e887f09168ce54bd7b3612f5c9947aaad52780772c116 |
File details
Details for the file rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 1.3 MB
- Tags: PyPy, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6336dad2c7e5da528e4600311503dc0c26b5c6b9a9378aea75a8ccee06ebd0c7 |
|
MD5 | 5104e53089e8a303943e6b3946b24cc9 |
|
BLAKE2b-256 | ea930001a51857a21c6220fb17fe5c5ca011a4bdbd96b2907e5362cc3a11f1ed |
File details
Details for the file rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1c9c66c063279bdfb72c2b50f4ecc60772d3ccdda46c9046a9b0bec6229dae7 |
|
MD5 | 68f0fe02d0cffe4f19c7d7b74b33e9aa |
|
BLAKE2b-256 | dec3a4fd430956e058f98586edd945343ac61c3ef19658e742bb3849e11cce98 |
File details
Details for the file rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: PyPy, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 943ba5fac18866d56df9502dd4d622e8f83cfadef17b56fafd7588d9c49efe6d |
|
MD5 | 028c36d2342b566f6afe65fa33005ba9 |
|
BLAKE2b-256 | af1e42eaed76ce3a05dab346e5dedf3f5deb6b9d79787267e954eb988547a429 |
File details
Details for the file rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl
.
File metadata
- Download URL: rpds_py-0.6.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl
- Upload date:
- Size: 1.2 MB
- Tags: PyPy, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7f6e17a167152e7b63842682fa5c9d0e3c44cdc0803db4347acb6206f27ff53 |
|
MD5 | 2cd5f88eeb672d5eef1c02ea5cf5d371 |
|
BLAKE2b-256 | be496d2dfe8de590ee717cda072ae63d88bd56673d2b876da6fcee0e655668cd |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-win_amd64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-win_amd64.whl
- Upload date:
- Size: 180.7 kB
- Tags: CPython 3.8+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e93dcd9897a6bf6de7874c024afb568ce58c4badd1e9add236af80d3147f174 |
|
MD5 | 333bc0ea858d926be33d41a66f06cdd2 |
|
BLAKE2b-256 | 1d4c9d755c869b249718440fb605ded543aaf17af217de34ce4010020120bf00 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-win32.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-win32.whl
- Upload date:
- Size: 170.6 kB
- Tags: CPython 3.8+, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a138042d3b42eb85227d452b408407cc084512c38301959fc8e1df7cd9621176 |
|
MD5 | 29bc226b21c0b9e0b74762bbb5ec1d02 |
|
BLAKE2b-256 | 9883539410df63894ae7810c34105c425d8703e97bee020312c0659ea86da366 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 380c79ede5fe6b4d4ccca2649023754d538edc06f149211a8997fcd33c9cc369 |
|
MD5 | 23eedc1c4e1b9f8de1447f94ae3363cf |
|
BLAKE2b-256 | ce0e12135ecf79fa840069957c9328fc35d9e0615d3ee3e72f0b628ff0028113 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6ec2570618962c269327d15463e4e1d603176497ca94a5bb70919125a426732 |
|
MD5 | 032b4d44b44186bc52754c0176becb6e |
|
BLAKE2b-256 | 6879ca517916b24927210f9b564b58144ba277d039d7d35f1c76116b1803db19 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25103715de14cde9a171a508bb3a379717f361d2d9df047fdc4dad49ac9b3e14 |
|
MD5 | c8bb899f255dff5c8201735bb7fe9f68 |
|
BLAKE2b-256 | 2e0e7bd7574dde98788a1bb7aaf1e877b1aafef5a13be3370c76adc99f720f05 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79210cdd384a2c16f79b2403f40d7cdeb406cd13962847a4b06bc4892ee07676 |
|
MD5 | 7505b5309def33745c0758481f6e647d |
|
BLAKE2b-256 | 1e2d81888b1e03502cdc969fcc25cf0170455e70f5a4af12543f18c527fcf5d3 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fccf4465d82d66dff9a0a77b6cf14a6535b86cbd02343247e8de51c84f53b065 |
|
MD5 | b17c24e60645896499f95088ce673ffe |
|
BLAKE2b-256 | 872c79681acf427fe1bbf4c4a0bbd3d9499c34d85fd2470086b556a20d5a5470 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.8+, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3aa992b92a2f6e2b83321d7b551fe8c749c385157119bc90d3a74c0de2940ea0 |
|
MD5 | 750868a371e275dfc185fa2f91b3aef6 |
|
BLAKE2b-256 | 6917b7b09c9bc52eb21fe96c9cbf07d83f344ea2c3c373a8309c450d106eeb0c |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-macosx_11_0_arm64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 301.7 kB
- Tags: CPython 3.8+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56e835235fca60984c2694716420ee3d4364efe146e21ee8bd613c12cf9ec1aa |
|
MD5 | a1528ed25d0a0b71275a2289c0dd6987 |
|
BLAKE2b-256 | e7bb98d639ca2693ffb2f114f9f416e715713cc6d783a0cccc4caa9b17a52215 |
File details
Details for the file rpds_py-0.6.0-cp38-abi3-macosx_10_7_x86_64.whl
.
File metadata
- Download URL: rpds_py-0.6.0-cp38-abi3-macosx_10_7_x86_64.whl
- Upload date:
- Size: 312.4 kB
- Tags: CPython 3.8+, macOS 10.7+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/0.14.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb2666b5ec1a95e43c9314bff25fc593dbaf91610a19de038fd4e98acf39f382 |
|
MD5 | f0ef39db7f55a2869400b5e4200cd5aa |
|
BLAKE2b-256 | 70b3186302dc7ca17681d17aaaa6c274413efe695ea93705d514f269f503d095 |