Skip to main content

Python serialization for adults

Project description

This fork from "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:

    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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

camelx-0.0.2.tar.gz (137.6 kB view details)

Uploaded Source

Built Distribution

camelx-0.0.2-py3-none-any.whl (140.8 kB view details)

Uploaded Python 3

File details

Details for the file camelx-0.0.2.tar.gz.

File metadata

  • Download URL: camelx-0.0.2.tar.gz
  • Upload date:
  • Size: 137.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for camelx-0.0.2.tar.gz
Algorithm Hash digest
SHA256 f11f73e883645b03728d9a790d561defd8dd8441605c9a2eab8bf836f68ebea5
MD5 1aa4f91050b0e943fc0ac8c6940dab6b
BLAKE2b-256 d5eb50527d3c82b4a7f06ff63d6d8645a99ba8857bb1215e5a39ee7847936823

See more details on using hashes here.

File details

Details for the file camelx-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: camelx-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 140.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for camelx-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0a3d3966ab0c36ebd5b90febac7222b2ab8b794ad812364a887abbae0c785192
MD5 78cf1d800ba053beec09425b5f7563e0
BLAKE2b-256 0a8e7b03df1f35d383ad5058998ce262db772fa8d0b810a8249aa4271ae257ef

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page