[Zope-Checkins] CVS: Zope/lib/python/Interface/Common - Mapping.py:1.2 __init__.py:1.2
Jim Fulton
jim@zope.com
Fri, 7 Jun 2002 13:19:00 -0400
Update of /cvs-repository/Zope/lib/python/Interface/Common
In directory cvs.zope.org:/tmp/cvs-serv24067/lib/python/Interface/Common
Added Files:
Mapping.py __init__.py
Log Message:
Backported Zope 3 Interface package to Python 2.1 and Zope 2. Some
modifications were needed in Zope (only two files). A lot of unused
(or rarely) features were removed from the Interface package. Slightly
deeper imports are needed.
=== Zope/lib/python/Interface/Common/Mapping.py 1.1 => 1.2 ===
+#
+# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""
+
+Revision information:
+$Id$
+"""
+
+from Interface import Interface
+
+class IReadMapping(Interface):
+ """Basic mapping interface
+ """
+
+ def __getitem__(key):
+ """Get a value for a key
+
+ A KeyError is raised if there is no value for the key.
+ """
+
+ def get(key, default=None):
+ """Get a value for a key
+
+ The default is returned if there is no value for the key.
+ """
+
+ def has_key(key):
+ """Tell if a key exists in the mapping
+ """
+
+class IEnumerableMapping(IReadMapping):
+ """Mapping objects whose items can be enumerated
+ """
+
+ def keys():
+ """Return the keys of the mapping object
+ """
+
+ def values():
+ """Return the values of the mapping object
+ """
+
+ def items():
+ """Return the items of the mapping object
+ """
+
+ def __len__():
+ """Return the number of items
+ """
=== Zope/lib/python/Interface/Common/__init__.py 1.1 => 1.2 ===
+#
+# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+