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