com.ibm.wala.shrikeBT.info
Class ThisAssignmentChecker

java.lang.Object
  extended by com.ibm.wala.shrikeBT.info.ThisAssignmentChecker
All Implemented Interfaces:
MethodData.Results

public class ThisAssignmentChecker
extends java.lang.Object
implements MethodData.Results

This method annotation checks to see whether "this" is assigned to by the method. The result is cached in an annotation.


Method Summary
static boolean isThisAssigned(MethodData info)
           
 boolean notifyUpdate(MethodData info, IInstruction[] newInstructions, ExceptionHandler[][] newHandlers, int[] newInstructionMap)
          This should not be called by any client.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

notifyUpdate

public boolean notifyUpdate(MethodData info,
                            IInstruction[] newInstructions,
                            ExceptionHandler[][] newHandlers,
                            int[] newInstructionMap)
This should not be called by any client.

Specified by:
notifyUpdate in interface MethodData.Results
Parameters:
info - the method data this annotation is attached to
newInstructions - the instructions the method will change to
newHandlers - the handler lists the method will change to
newInstructionMap - the instructions-to-bytecodes map the method will change to
Returns:
true to remove the object from the info set, for example because the annotation is now invalid

isThisAssigned

public static boolean isThisAssigned(MethodData info)
                              throws java.lang.IllegalArgumentException
Returns:
true iff 'this' is assigned to by the method
Throws:
java.lang.IllegalArgumentException