Metadata-Version: 2.4
Name: chestkey
Version: 0.1.0
Summary: A generic storage datatype based on deterministic identities.
Keywords: cache,storage,memoization,content-addressed,deterministic
Author: Wannes Vantorre
Author-email: Wannes Vantorre <vantorrewannes@gmail.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries
Classifier: Typing :: Typed
Requires-Dist: blake3>=1.0.9
Requires-Dist: dill>=0.4.1
Requires-Python: >=3.12
Description-Content-Type: text/markdown

# chestkey

A generic storage datatype based on deterministic identities.

```python
from pathlib import Path
from chestkey import Chest, Key

def add(x: int, y: int) -> int:
    return x + y

def cached_add(x: int, y: int) -> int:
    chest = Chest(Path(".cache"))
    key = Key((add.__code__, x, y))
    if chest.contains(key):
        return chest.get[int](key)

    z = add(x, y)
    chest.set(key, z)
    return z
```
