< prev index next >

src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO_W.java

Print this page

        

*** 19,76 **** * limitations under the License. */ package com.sun.org.apache.bcel.internal.generic; ! import java.io.*; import com.sun.org.apache.bcel.internal.util.ByteSequence; /** * GOTO_W - Branch always (to relative offset, not absolute address) * ! * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public class GOTO_W extends GotoInstruction { /** * Empty constructor needed for the Class.newInstance() statement in * Instruction.readInstruction(). Not to be used otherwise. */ ! GOTO_W() {} ! public GOTO_W(InstructionHandle target) { ! super(com.sun.org.apache.bcel.internal.Constants.GOTO_W, target); ! length = 5; } /** * Dump instruction as byte code to stream out. * @param out Output stream */ ! public void dump(DataOutputStream out) throws IOException { ! index = getTargetOffset(); ! out.writeByte(opcode); ! out.writeInt(index); } /** * Read needed data (e.g. index) from file. */ ! protected void initFromFile(ByteSequence bytes, boolean wide) throws IOException ! { ! index = bytes.readInt(); ! length = 5; } /** * Call corresponding visitor method(s). The order is: * Call visitor methods of implemented interfaces first, then * call methods according to the class hierarchy in descending order, * i.e., the most specific visitXXX() call comes last. * * @param v Visitor object */ ! public void accept(Visitor v) { v.visitUnconditionalBranch(this); v.visitBranchInstruction(this); v.visitGotoInstruction(this); v.visitGOTO_W(this); } --- 19,86 ---- * limitations under the License. */ package com.sun.org.apache.bcel.internal.generic; ! import java.io.DataOutputStream; ! import java.io.IOException; ! import com.sun.org.apache.bcel.internal.util.ByteSequence; /** * GOTO_W - Branch always (to relative offset, not absolute address) * ! * @version $Id: GOTO_W.java 1747278 2016-06-07 17:28:43Z britter $ */ public class GOTO_W extends GotoInstruction { + /** * Empty constructor needed for the Class.newInstance() statement in * Instruction.readInstruction(). Not to be used otherwise. */ ! GOTO_W() { ! } ! ! public GOTO_W(final InstructionHandle target) { ! super(com.sun.org.apache.bcel.internal.Const.GOTO_W, target); ! super.setLength(5); } + /** * Dump instruction as byte code to stream out. * @param out Output stream */ ! @Override ! public void dump( final DataOutputStream out ) throws IOException { ! super.setIndex(getTargetOffset()); ! out.writeByte(super.getOpcode()); ! out.writeInt(super.getIndex()); } + /** * Read needed data (e.g. index) from file. */ ! @Override ! protected void initFromFile( final ByteSequence bytes, final boolean wide ) throws IOException { ! super.setIndex(bytes.readInt()); ! super.setLength(5); } + /** * Call corresponding visitor method(s). The order is: * Call visitor methods of implemented interfaces first, then * call methods according to the class hierarchy in descending order, * i.e., the most specific visitXXX() call comes last. * * @param v Visitor object */ ! @Override ! public void accept( final Visitor v ) { v.visitUnconditionalBranch(this); v.visitBranchInstruction(this); v.visitGotoInstruction(this); v.visitGOTO_W(this); }
< prev index next >