Skip to main content

BePosPliz (be positional please) is a lightweight module to anonymize the arguments of a function.

Project description

BePosPliz

BePosPliz (be positional please) is a lightweight module to anonymize the arguments of a function.

Relevant PEP: https://peps.python.org/pep-0646

I am not really sure if this has a real world purpose, but playing with new Python features is very enjoyable. I appreciate the effort to improve type expressiveness, and I am looking forward to PEPs 695 and 696 for even more fun :D

Features

anon_args

Usage

Let the following function:

from bepospliz import anon_args

@anon_args
def div(a: int, b: int) -> float:
    """Divide a by b"""
    return a / b

div's original signature is div(a: int, b: int) -> float.

div without decorator

With the decorator @anon_args, it becomes div(int, int) -> float, meaning that it cannot be called by specifically naming the args anymore (e.g. div(b=3, a=2))

div with the decorator


Signature

anon_args(function: Callable[[*Ps], R]) -> Callable[[*Ps], R]

with Ps being the set of types of function's arguments, and R its return type.

Example

Given the previous div function, Ps would be (int, int) and R would be float.

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

bepospliz-1.0.1.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

bepospliz-1.0.1-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

Details for the file bepospliz-1.0.1.tar.gz.

File metadata

  • Download URL: bepospliz-1.0.1.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for bepospliz-1.0.1.tar.gz
Algorithm Hash digest
SHA256 4a6588055e9498fff28497d8fd511b820237b6d82526b8997428929f24bb8242
MD5 e5a91dc23982465cb3f223a2232b696b
BLAKE2b-256 047532b99ead9b4b5d56b409bf03d9d4db80371f8855efa9925b98c0ae6da59b

See more details on using hashes here.

File details

Details for the file bepospliz-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: bepospliz-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 3.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for bepospliz-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8b152dc2621a7c870a9fd82e7281025a4bac027cb6d7a294e35b8faae0ddad44
MD5 e4676318777787a3ad1e24fb232c0c07
BLAKE2b-256 0c7316db53e2f84d53f1903c4f74a228c99cda7b3d717aa5e0ffb9640a2a232f

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