Skip to main content

Convenience facilities related to Python functions.

  • funccite: cite a function (name and code location)
  • @prop: replacement for @property which turns internal AttributeErrors into RuntimeErrors
  • some decorators to verify the return types of functions

Function callmethod_if(o, method, default=None, a=None, kw=None)

Call the named method on the object o if it exists.

If it does not exist, return default (which defaults to None). Otherwise call getattr(o, method)(*a, **kw). a defaults to (). kw defaults to {}.

Function derived_from(property_name)

A property which must be recomputed if the revision of another property exceeds the snapshot revision.

Function derived_property(func, original_revision_name='_revision', lock_name='_lock', property_name=None, unset_object=None)

A property which must be recomputed if the reference revision (attached to self) exceeds the snapshot revision.

Function funccite(func)

Return a citation for a function (name and code location).

Function funcname(func)

Return a name for the supplied function func. Several objects do not have a name attribute, such as partials.

Function prop(func)

A substitute for the builtin @property.

The builtin @property decorator lets internal AttributeErrors escape. While that can support properties that appear to exist conditionally, in practice this is almost never what I want, and it masks deeper errors. Hence this wrapper for @property that transmutes internal AttributeErrors into RuntimeErrors.

Function returns_bool(func)

Decorator for functions which should return Booleans.

Function returns_str(func)

Decorator for functions which should return strings.

Function returns_type(func, basetype)

Decrator which checks that a function returns values of type basetype.

Function yields_str(func)

Decorator for generators which should yield strings.

Function yields_type(func, basetype)

Decorator which checks that a generator yields values of type basetype.

Release files for cs-py-func 20190729

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cs-py-func 20190729
File Size Uploaded
cs.py.func-20190729.tar.gz 3.7 kB Details

Release files / cs.py.func-20190729.tar.gz

Download URL cs.py.func-20190729.tar.gz
Size 3.7 kB
Tags Source
SHA-256 checksum
How to use checksums
37f9cb2c755e2cff53815f9e97d3950ab76e9e0fb8ab29a55a33855398ecdddf
BLAKE2b-256 checksum
How to use checksums
a83844f03fa93d432a7c174d28f18bf0f0bb2069cee0bccde046ee821524630b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.4
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page