Skip to main content

Zope interfaces applied to Python builtins

Project description

dolmen.builtins provides a collection of interfaces representing the commonly used Python built-ins. It aims to make the component architecture useable with the most basic objects and to defines the types in order to extend them conveniently.

>>> from zope.interface import verify
>>> from dolmen.builtins import interfaces as base
>>> macduff = "Tis' a very nice string."
>>> base.IString.providedBy(macduff)
True
>>> macbeth = u"Aye, indeed my friend."
>>> base.IUnicode.providedBy(macbeth)
True
>>> is_usurper = True
>>> base.IBoolean.providedBy(is_usurper)
True
>>> crown = 1
>>> base.INumeric.providedBy(crown)
True
>>> king = 0.1
>>> base.INumeric.providedBy(king)
True
>>> opposants = 1L
>>> base.INumeric.providedBy(opposants)
True

More complex types have more information defined in their interfaces. It’s the case for iterables and file-like classes.

>>> murderers = ('MacBeth', 'Lady MacBeth')
>>> base.ITuple.providedBy(murderers)
True
>>> victims = ['Banco', 'Duncan']
>>> base.IList.providedBy(victims)
True
>>> thanes = {"Glamis": "MacBeth", "Fife": "MacDuff"}
>>> base.IDict.providedBy(thanes)
True
>>> base.IIterable.providedBy(victims)
True
>>> base.IIterable.providedBy(murderers)
True
>>> base.IIterable.providedBy(thanes)
True
>>> verify.verifyObject(base.IDict, thanes)
True
>>> base.IFile.implementedBy(file)
True
>>> verify.verifyClass(base.IFile, file)
True

Changelog

0.3.1 (2010-02-27)

  • Remove zope.testing dependency.

0.3 (2010-02-27)

  • Cleaned code. It’s now pep8 compliant.
  • Cleaned dependencies. We no longer depend on zope.app.

0.2 (2009-10-16)

  • Added file to the marked built-ins, using a detailed interface.

0.1 (2009-10-15)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for dolmen.builtins, version 0.3.1
Filename, size File type Python version Upload date Hashes
Filename, size dolmen.builtins-0.3.1.tar.gz (3.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page