Skip to main content

Inspired by Marshmallow Enum and by ORM libraries.

The Toasted Marshmallow Enum package makes it possible to dump and load Enum values based on the ultra fast serialization that Toasted Marshmallow provides.

Installing toastedmarshmallow-enum

pip install toastedmarshmallow-enum

Using Toasted Marshmallow Enum

Using Toasted Marshmallow Enum in an existing Marshmallow Schema is as easy as defining the enum class attribute as an EnumField. For example:

from enum import Enum

import toastedmarshmallow
from marshmallow import fields, Schema

from toastedmarshmallow_enum import EnumField

class Level(Enum):
    LOW = '0'
    MEDIUM = '1'
    HIGH = '2'

class UserSchema(Schema):
    class Meta:
        jit = toastedmarshmallow.Jit

    name = fields.String()
    level = EnumField(Level)

How it works

Dump methods:

class User:
    def __init(name, level):
        self.name = name
        self.level = level

schema = DummyUserSchema()

user = User(name='John Doe', level=Level.HIGH)
print(schema.dump(user).data)
# {'name': 'John Doe', 'level': 2}

print(schema.load({'name': 'John Doe', 'level: 2}).data)
# {'name': 'John Doe', 'level': 'HIGH'}

Release files for toastedmarshmallow-enum 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for toastedmarshmallow-enum 1.0.1
File Size Uploaded
toastedmarshmallow-enum-1.0.1.tar.gz 2.8 kB Details

Release files / toastedmarshmallow-enum-1.0.1.tar.gz

Download URL toastedmarshmallow-enum-1.0.1.tar.gz
Size 2.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b4058a7f29e0a1210e5f52650b75858f77a01ec255d659793c0e52f57ddc9eb7
BLAKE2b-256 checksum
How to use checksums
b22359f407d89275e392b9ab3cb5c9c7ebf16312cd4f3eaa28f9f92bced10091
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.1 This release

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page