[Zope3-checkins] CVS: Zope3/src/zope/proxy/context - decorators.txt:1.1.2.5
Steve Alexander
steve@cat-box.net
Sun, 18 May 2003 17:19:58 -0400
Update of /cvs-repository/Zope3/src/zope/proxy/context
In directory cvs.zope.org:/tmp/cvs-serv4988/proxy/context
Modified Files:
Tag: stevea-decorators-branch
decorators.txt
Log Message:
Removed another couple of TODO items by implementing the code.
=== Zope3/src/zope/proxy/context/decorators.txt 1.1.2.4 => 1.1.2.5 ===
--- Zope3/src/zope/proxy/context/decorators.txt:1.1.2.4 Sun May 18 17:01:02 2003
+++ Zope3/src/zope/proxy/context/decorators.txt Sun May 18 17:19:57 2003
@@ -228,19 +228,18 @@
'inner' object should provide. In the current implementation, it is optional,
and is used only for documentation.
-TODO: Make names *not* be taken from the permissions. The names specify the
- names that get forwarded to the decorator, and must be given explicitly.
- The permissions should be allowed to declare more names, but they only
- count if they are present in 'names'. This allows us to use interfaces
- to define permissions, even if we're only using some of the names from
- the interfaces. It also allows us to use the 'mimic' or 'like_class'
- permission declarations.
+The 'names' attribute specifies the names that get forwarded to the decorator,
+and they must be given explicitly.
+As in the <content> directive, permissions are declared for attributes either
+directly, or indirectly via an interface.
+It is allowed to declare permissions, directly or indirectly, for attributes
+other than those that are given in 'names'.
+This allows us to use interfaces to define permissions, even if we're only
+using some of the names from the interfaces in the mixin.
+This also allows us to use the '<require like_class="..."' directive.
Note that __providedBy__ and __Security_checker__ are reserved names, and
cannot be used.
-
-TODO: __providedBy__ and __Security_checker__ should be checked by the
- ZCML handler.
Note also that "slot" names, such as __getitem__ and __iter__ can be used only
if they appear in the list of supported names. This list can be found in