Provides Functors and Predicates that operate on Java Objects that observe the bean standard naming convention. This is the home for functors that use reflection in construction and/or evaluation.

In previous versions, the constructors used in this package created type-unsafe functors. This was due to an incomplete understanding on my part of the implications of parameterizing the Class class. It's somewhat more obvious to me know how clever this is: it allows the compiler to check that the class given to a method is in fact the same class with which the functor is parameterized. The previous constructors did not take the class of the argument, or they used unparameterized classes as arguments: they typically performed some reflection on the first argument passed to fn(), lazily loading the Method or Constructor on the first call.

In this version, those constructors are deprecated. They are likely to disappear in a future version (unless they prove necessary to the success of some of the project goals).