accept
Predicate accept(Visitor visitor,
               Indexes indexes)
Accept visitor. Predicate can either return it's own instance if no modification
 was done as a result of the visit. In the case there is a change needed then
 the predicate has to return changed copy of itself. Predicates has to be treated
 as immutable for optimization purposes.
- Parameters:
- visitor- visitor to accept
- indexes- indexes
- Returns:
- itself or its changed copy