Pimp your Class/Property/Methods with useful functionality
Pimp My Class
[![Coverage Status](https://coveralls.io/repos/github/hgrecco/pimpmyclass/badge.svg?branch=master)](https://coveralls.io/github/hgrecco/pimpmyclass?branch=master) [![Build Status](https://travis-ci.org/hgrecco/pimpmyclass.svg?branch=master)](https://travis-ci.org/hgrecco/pimpmyclass) ![Python Version](https://img.shields.io/pypi/pyversions/pimpmyclass.svg) [![Python Version](https://img.shields.io/pypi/v/pimpmyclass.svg)](https://pypi.org/project/pimpmyclass/)
This library provides base classes to enable useful behavior in Python Objects.
The central purpose of the library is to extend python properties to allow:
- get/set logging.
- get/set timing, success and failure stats.
- async locking.
- get/set coercion and conversion.
- value cache
- prevent unnecessary set.
- read once properties
But most importantly, it allows owner specific configurations. Properties are class attributes, and therefore it is difficult to have a property which is, for exampled cached, in an object but not cached in another instance of the same class.
The library also provides DictProperties: that is properties that can be accessed by key; and also methods!
Each capability is isolated in individual classes allowing you to pick only what you need.
- Implemented log_values to toggle how values are logged
- Improved testing.
- Split GetSetCacheProperty into GetCacheProperty and SetCacheProperty
- Added the possibility to use Python Enum as keys in DictFeat.
- Removed keyword argument from DictFeat signal for greater compatibility with Qt.
- Fixed repr in BoundedProperty.
- Fixed check_signature when params is empty.
- first public release.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size pimpmyclass-0.3.tar.gz (17.7 kB)||File type Source||Python version None||Upload date||Hashes View hashes|