sofya.mutator
Interface MutationVisitor


public interface MutationVisitor

A visitor for mutations.

This is not an entirely traditional visitor; many of the visitable classes have inheritance relationships with each other. The purpose of this visitor is primarily to support specialization where it is useful while still providing a generic visitation pattern otherwise.

Version:
10/04/2005
Author:
Alex Kinneer

Method Summary
 void visit(ClassMutation cm)
          Visit a class scope mutation.
 void visit(GroupableMutation gm)
          Visit a groupable mutation.
 void visit(MethodMutation mm)
          Visit a method scope mutation (method bytecode mutation).
 void visit(Mutation m)
          Visit a mutation.
 void visit(MutationGroup mg, boolean begin)
          Visit a mutation group.
 

Method Detail

visit

void visit(Mutation m)
           throws MutationException
Visit a mutation.

Parameters:
m - Mutation to visit.
Throws:
MutationException

visit

void visit(MutationGroup mg,
           boolean begin)
           throws MutationException
Visit a mutation group.

Parameters:
mg - Mutation group to visit.
begin - Used to indicate to this visitor whether this is the beginning of the visitation. Since a mutation group encapsulates other mutations, some visitors may want to execute setup actions before visitation of member mutations begins. If the mutation group visits its members (see MutationGroup.visitMembers(boolean)), this method will be called with this parameter set to false after all the member mutations have been visited.
Throws:
MutationException

visit

void visit(GroupableMutation gm)
           throws MutationException
Visit a groupable mutation.

Parameters:
gm - Groupable mutation to visit.
Throws:
MutationException

visit

void visit(ClassMutation cm)
           throws MutationException
Visit a class scope mutation.

Parameters:
cm - Class mutation to visit.
Throws:
MutationException

visit

void visit(MethodMutation mm)
           throws MutationException
Visit a method scope mutation (method bytecode mutation).

Parameters:
mm - Method mutation to visit.
Throws:
MutationException