Skip to main content

API dispatch in Python

Project description

Provide a convenient way to define dispatch depending on outside APIs or other factors.

Installation

Waist requires Python 3.8 or higher.

pip install waist

What's This?

Waist helps you define dispatch methods for externally dependent APIs.

from waist import API

import bpy  # 3D software Blender API


# Set the API that we need to support.
api = API(".".join(bpy.app.version))


@api(">4")
def f():
    return "Do something that only works in versions before 4."

@api("==4.0.1")
def f():
    return "Something happened in 4.0.1 that needs specific fix."

@api()
def f():
    return ("Generic or default function that gets called if no suitable version spec is found." 
            "In this case if the version is 4 or above (but not 4.0.1)")

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

waist-0.1.0.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

waist-0.1.0-py3-none-any.whl (3.2 kB view details)

Uploaded Python 3

File details

Details for the file waist-0.1.0.tar.gz.

File metadata

  • Download URL: waist-0.1.0.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.2

File hashes

Hashes for waist-0.1.0.tar.gz
Algorithm Hash digest
SHA256 43fc72eab2caeb62443e29c91faf8efcbce084d1a12594f6bebe622b3bbc3cd4
MD5 2710884ec7a89960ce3b31795cd32a9b
BLAKE2b-256 115657c54cd4ff17cc82c06ce3ef02f5318f2e71a4c31d82e5b878b8a5ba7633

See more details on using hashes here.

File details

Details for the file waist-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: waist-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.2

File hashes

Hashes for waist-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ccef5aa2a5a80a95b93a96b957e0490e0ce9d25c1a5a8da12990814bbbdaa4b
MD5 833897c68a76e7e716ce139b9f49b4c5
BLAKE2b-256 e5979e2aa24684ab591f2de542ccc58d64cdbad51b9035e78429d991095df736

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