com.android.dx.cf.code
Class ValueAwareMachine

java.lang.Object
  extended by com.android.dx.cf.code.BaseMachine
      extended by com.android.dx.cf.code.ValueAwareMachine
All Implemented Interfaces:
Machine

public class ValueAwareMachine
extends BaseMachine

Machine which keeps track of known values but does not do smart/realistic reference type calculations.


Constructor Summary
ValueAwareMachine(Prototype prototype)
          Constructs an instance.
 
Method Summary
 void run(Frame frame, int offset, int opcode)
          "Runs" the indicated opcode in an appropriate way, using the arguments area as appropriate, and modifying the given frame in response.
 
Methods inherited from class com.android.dx.cf.code.BaseMachine
addResult, arg, argCount, argWidth, auxCstArg, auxInitValues, auxIntArg, auxSwitchArg, auxTargetArg, auxType, clearArgs, clearResult, getAuxCases, getAuxCst, getAuxInt, getAuxTarget, getAuxType, getInitValues, getLocalIndex, getLocalInfo, getLocalTarget, getPrototype, localArg, localInfo, localTarget, popArgs, popArgs, popArgs, popArgs, popArgs, result, resultCount, resultWidth, setResult, storeResults, throwLocalMismatch
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ValueAwareMachine

public ValueAwareMachine(Prototype prototype)
Constructs an instance.

Parameters:
prototype - non-null; the prototype for the associated method
Method Detail

run

public void run(Frame frame,
                int offset,
                int opcode)
"Runs" the indicated opcode in an appropriate way, using the arguments area as appropriate, and modifying the given frame in response.

Parameters:
frame - non-null; frame to operate on
offset - >= 0; byte offset in the method to the opcode being run
opcode - >= 0; the opcode to run


Copyright © 2015. All rights reserved.