Author: larry
Date: Fri Feb 2 01:28:24 2007
New Revision: 13566
Modified:
doc/trunk/design/syn/S12.pod
Log:
Random cleanup.
Modified: doc/trunk/design/syn/S12.pod
==============================================================================
--- doc/trunk/design/syn/S12.pod (original)
+++ doc/trunk/design/syn/S12.pod Fri Feb 2 01:28:24 2007
@@ -624,9 +624,12 @@
While this is primarily intended for use by file tests, other classes
may define a C<TEST> method to provide a similar mechanism for interrogating
lightweight properties without having to define methods for all of them.
-(Note, though, that I<all> such queries are answered by the first located
+
+Note, though, that I<all> such queries are answered by the first located
C<TEST> method--they are not inherited independently. The C<TEST> method
-must explicitly pass the query on to other classes in such cases.)
+must explicitly pass the query on to other classes in such cases. Likewise,
+if conflicting C<TEST> methods are composed from two different roles, they
+must be disambiguated as any other conflicting method would be.
Depending on the class, the pairs in question may have arguments.
The C<Hash> class in particular makes use of pair syntax for subscript
@@ -635,7 +638,7 @@
%hash.:exists{$key}
%hash.:delete{$key}
-This has the advantage that pair's argument is actually parsed exactly
+This has the advantage that the pair's argument is actually parsed exactly
as a subscript would be. A C<.exists()> method could not easily make
such a guarantee about its arguments.
@@ -643,6 +646,7 @@
well:
@array.:[EMAIL PROTECTED]
+ %hash.:[EMAIL PROTECTED]
=head1 Calling sets of methods