00001 package gov.nasa.arc.ase.jpf.jvm.bytecode; 00002 00003 import de.fub.bytecode.generic.InstructionHandle; 00004 import gov.nasa.arc.ase.jpf.jvm.KernelState; 00005 import gov.nasa.arc.ase.jpf.jvm.SystemState; 00006 import gov.nasa.arc.ase.jpf.jvm.ThreadInfo; 00007 00008 public interface Instruction { 00009 /********************************************************/ 00010 /********************************************************/ 00011 public boolean examine(SystemState ss, KernelState ks, ThreadInfo th); 00012 public InstructionHandle execute(SystemState ss, KernelState ks, ThreadInfo th); 00013 public boolean isExecutable(SystemState ss, KernelState ks, ThreadInfo th); 00014 public void setPeer(de.fub.bytecode.generic.Instruction i); 00015 }