Don't allow a _Predicate to take over the identity of another _Predicate.
Don't allow a _Predicate to take over the identity of another _Predicate.

Previously, the _Predicate constructor could take either a naked
function object or another _Predicate as argument.  If the argument
was a _Predicate instance, it would take over the identity of the
other instance.  (This cute trick essentially allows another class to
inherit dynamically from any class that itself inherits from
_Predicate.)

For the unenlightened, the above-mentioned trick has the disadvantage
that it leads to extremely tight coupling between _Predicate and the
classes derived from it, decreasing maintainability and limiting the
uses of the derived classes.

Now that no more classes inherit from _Predicate, this trick is no
longer needed.

* subversion/tests/cmdline/svntest/testcase.py (_Predicate.__init__):
  Only allow a _Predicate to be constructed using a naked function
  object, not using another _Predicate.


git-svn-id: f8a4e5e023278da1e04e203c7fe051e3c4285d88@859354 13f79535-47bb-0310-9956-ffa450edef68

YueLinHo/Subversion,wbond/subversion,wbond/subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,wbond/subversion,YueLinHo/Subversion,wbond/subversion,wbond/subversion,wbond/subversion,YueLinHo/Subversion,wbond/subversion