Package net.sf.jga.fn.property

Provides Functors and Predicates that operate on Java Objects that observe the bean standard naming convention.

See: Description

Package net.sf.jga.fn.property Description:

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.

Note that many of these functors are not entirely type-safe: the interaction between generics and reflection in java is somewhat hands-off. There is no way, for example, to check that the type that is used at declaration of one of these functors is compatable with a class object passed to its constructor. If there is a discrepency between the two, the class object will generally take precedence (ie, the class object is used at runtime to perform reflective operations, and the type used at declaration is not known at runtime).

It is up to the user to ensure that the class passed to the constructor of one of these functors is correct. The best way to ensure this may be to not cast the results of functor evaluation (the runtime will throw ClassCastException in this case -- this will generally be detected during testing of the application. (See the testConstructClassMismatch in TestConstructUnary for an example of this).