Skip to main content

Monads for Python. Side-effect explicitly.

Project description

Logo

pyEffects

Build Status PyPI version Documentation Status License

Monads for Python. Side-effect explicitly.

Handle your side-effects in Python like a boss. Implements functional types for Either, Option, Try, and Future.

For more detailed information, please refer to the API Documentation.


1. Install

pip install pyeffects


2. Using Option

>>> from pyeffects.Option import *
>>> val = Some(5).map(lambda v: v * v)
>>> val
Some(25)
>>> val.is_defined()
True
>>> val.get()
25

3. Using Try

>>> from pyeffects.Try import *
>>> val = Success(5).map(lambda v: v * v)
>>> val
Success(25)
>>> val.is_success()
True
>>> val.get()
25

4. Using Either

>>> from pyeffects.Either import *
>>> val = Right(5).map(lambda v: v * v)
>>> val
Right(25)
>>> val.is_right()
True
>>> val.right()
25

5. Using Future

>>> from pyeffects.Future import *
>>> val = Future.of(5).map(lambda v: v * v)
>>> val
Future(Success(25))
>>> val.on_complete(lambda v: print(v))
Success(25)
>>> val.get()
25

6. Reporting an Issue

Please report any issues or bugs to the Github issues page.


7. License

This project is licensed under the Apache 2 License.

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

pyeffects-1.0.5.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

pyeffects-1.0.5-py2.py3-none-any.whl (12.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pyeffects-1.0.5.tar.gz.

File metadata

  • Download URL: pyeffects-1.0.5.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.9

File hashes

Hashes for pyeffects-1.0.5.tar.gz
Algorithm Hash digest
SHA256 fe59f26f3bdb638acf0d5cbe53d5cc39a588fb24cc153105cc7ea200076d425c
MD5 0c345e3d895d9ca7d8b3798ee99e3494
BLAKE2b-256 8c636c8b1409a4263d2886067ce50a237d1105cd88ea09741e2dfe49193bd1cb

See more details on using hashes here.

File details

Details for the file pyeffects-1.0.5-py2.py3-none-any.whl.

File metadata

  • Download URL: pyeffects-1.0.5-py2.py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.9

File hashes

Hashes for pyeffects-1.0.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 db761472ae52494635af6e944918df669096193b7a84b3f436c20d47b4205ba4
MD5 e0ca96a7f52c843b26663b207ce7dff8
BLAKE2b-256 16060d633139fac84900152e961a7cfb3fa8649c24aaa1ad4c0ffe0dae8d97e8

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