pyTooling is a powerful collection of arbitrary useful classes, decorators, meta-classes and exceptions.
Project description
pyTooling
pyTooling is a powerful collection of arbitrary useful classes, decorators, meta-classes and exceptions. It's useful for any Python-base project independent if it's a library, framework or CLI tool.
Introduction
TODO
Package Details
Common Classes
- pyTooling.CallByRef.*
Emulation of call-by-reference parameters. - pyTooling.Versioning.*
Class representations of semantic version (SemVer) and calendar version (CalVer) numbers.
Decorators
- export
Register the given function or class as publicly accessible in a module.
Exceptions
- EnvironmentException
... is raised when an expected environment variable is missing. - PlatformNotSupportedException
... is raise if the platform is not supported. - NotConfiguredException
... is raise if the requested setting is not configured.
Meta-Classes
- Singleton
Allow only a single instance of a class. - Overloading
Overloading Allow method overloading in Python classes. Dispatch method calls based on method signatures (type annotations).
Examples
@export
Decorator
from pyTooling.Decorators import export
@export
class MyClass:
pass
CallByRefIntParam
from pyTooling.CallByRef import CallByRefIntParam
# define a call-by-reference parameter for integer values
myInt = CallByRefIntParam(3)
# a function using a call-by-reference parameter
def func(param: CallByRefIntParam):
param <<= param * 4
# call the function and pass the wrapper object
func(myInt)
print(myInt.Value)
Contributors
- Patrick Lehmann (Maintainer)
- and more...
License
This Python package (source code) licensed under Apache License 2.0.
The accompanying documentation is licensed under Creative Commons - Attribution 4.0 (CC-BY 4.0).
SPDX-License-Identifier: Apache-2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyTooling-1.10.0.tar.gz
(27.1 kB
view hashes)
Built Distribution
pyTooling-1.10.0-py3-none-any.whl
(34.3 kB
view hashes)
Close
Hashes for pyTooling-1.10.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b2f39d2d5e7854aeab83bbe2790570b68a7032580daacd6e4c4082cbbd96f3ce |
|
MD5 | 9e776e1d2ba548ca443f6fe27f6719e7 |
|
BLAKE2b-256 | 39f364e7580fef9324b7d8cea0aed960277dcec678a7e6be0878f19285961053 |