Metadata-Version: 2.1
Name: camelx
Version: 0.0.1
Summary: Python serialization for adults
Home-page: https://github.com/vzool/camelx
Author: vzool (Abdelaziz Elrashed)
Author-email: "Eevee (Lexy Munroe)" <eevee.camel@veekun.com>, Abdelaziz Elrashed Elshaikh Mohamed <aeemh.sdn@gmail.com>
Project-URL: Homepage, https://github.com/vzool/camelx
Project-URL: Issues, https://github.com/vzool/camelx/issues
Description-Content-Type: text/markdown
License-File: LICENSE

**This fork from "[eevee/camel](https://github.com/eevee/camel)" aims to maintain and potentially enhance the library, the original project has been inactive for years.**

CamelX
=====

CamelX is a library that lets you describe how to serialize your objects to
YAML — and refuses to serialize them if you don't.

If you are interested in contributing, please submit pull requests.

Quick example:

```python

    from camelx import Camel, CamelRegistry

    class DieRoll(tuple):
        def __new__(cls, a, b):
            return tuple.__new__(cls, [a, b])

        def __repr__(self):
            return "DieRoll(%s,%s)" % self

    reg = CamelRegistry()

    @reg.dumper(DieRoll, u'roll', version=None)
    def _dump_dice(data):
        return u"{}d{}".format(*data)

    @reg.loader(u'roll', version=None)
    def _load_dice(data, version):
        a, _, b = data.partition(u'd')
        return DieRoll(int(a), int(b))

    value = DieRoll(3, 6)
    camel = Camel([reg])
    print(camel.dump(value))

    # !roll 3d6
    # ...
```

Docs: http://camel.readthedocs.org/en/latest/

GitHub: https://github.com/eevee/camel

