Metadata-Version: 2.1
Name: marshmallow-meta
Version: 0.0.1
Summary: decorator syntax for marshmallow meta attributes (with inheritance)
Home-page: https://github.com/deckar01/marshmallow-meta
Author: Jared Deckard
Author-email: jared@shademaps.com
Project-URL: Bug Tracker, https://github.com/pypa/deckar01/marshmallow-meta/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE

# marshmallow-meta

*decorator syntax for marshmallow meta attributes (with inheritance)*

Decorators communicate that the behavior of a class is being modified and are more concise when only a few meta attributes are needed. Making inheritance the default further reduces the boilerplate needed to make minor changes to a subclass.

## Install

```sh
pip install marshmallow-meta
```

```py
from marshmallow_meta import meta
```

## API

### `@meta(*kwargs)`

Build a meta class that inherits attributes from the base schema's meta class.

```py
@meta(unknown=INCLUDE)
class Test(Schema):
    foo = fields.String()
```

### `@meta.new(*kwargs)`

Build a new meta class without inherited attributes.

```py
@meta.new(fields=('bar', 'baz'))
class Fresh(Test):
   pass
```

### `@meta.use(*classes, **kwargs)`

Build a meta class that inherits attributes from certain meta classes.

```py
@meta.use(Test.Meta)
class CopyCat(Schema):
   buzz = fields.String()
```
