Metadata-Version: 2.1
Name: rust_enum
Version: 1.0.1
Summary: Rust-style enums
Home-page: https://github.com/girvel/rust_enum
Author: Nikita Girvel Dobrynin
Author-email: widauka@ya.ru
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

# Rust-style enums for Python

Easily-defined enumerations that can contain data and be matched.

Here they are:

```python
from rust_enum import enum, Case

def test_enum_use_case():
    @enum
    class DivisionResult:
        Undefined = Case()
        Some = Case(number=float)

    def divide(a: float, b: float) -> DivisionResult:
        if b == 0: return DivisionResult.Undefined()
        return DivisionResult.Some(a / b)

    match divide(3, 3):
        case DivisionResult.Some(n): assert n == 1
        case _: assert False
```
