Class Branch
java.lang.Object
net.covers1624.coffeegrinder.bytecode.Instruction
net.covers1624.coffeegrinder.bytecode.insns.SimpleInstruction
net.covers1624.coffeegrinder.bytecode.insns.Branch
- All Implemented Interfaces:
net.covers1624.quack.util.Copyable<Instruction>
Unconditional branch.
When humping to the entrypoint of the current block container, the branch represents a continue statement.
Created by covers1624 on 25/2/21.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<R,C> R accept(InsnVisitor<R, C> visitor, C ctx) Pass thisInstructionthrough the suppliedInsnVisitor.copy()Deep copy this instruction.Any direct flags for thisInstruction.Gets the stack type of the value produced by thisInstruction.@Nullable BlockContainerprotected voidprotected voidvoidsetTargetBlock(Block targetBlock) Methods inherited from class net.covers1624.coffeegrinder.bytecode.Instruction
accept, addRef, ancestorsOfType, computeFlags, descendantsMatching, descendantsOfType, descendantsToList, descendantsToListWhere, descendantsWhere, firstAncestorOfType, getBytecodeOffset, getChildren, getDescendants, getFirstChild, getFirstChildOrNull, getFlags, getLastChild, getLastChildOrNull, getNextSibling, getNextSiblingOrNull, getParent, getParentOrNull, getPrevSibling, getPrevSiblingOrNull, getSourceLine, getTag, hasDirectFlag, hasFlag, insertAfter, insertBefore, invalidateFlags, isConnected, isDescendantOf, onChildModified, releaseRef, remove, replaceWith, setBytecodeOffset, setOffsets, setSourceLine, setTag, toString, toString, withOffsets
-
Constructor Details
-
Branch
-
-
Method Details
-
onConnected
protected void onConnected()- Overrides:
onConnectedin classInstruction
-
onDisconnected
protected void onDisconnected()- Overrides:
onDisconnectedin classInstruction
-
getResultType
Description copied from class:InstructionGets the stack type of the value produced by thisInstruction.- Specified by:
getResultTypein classInstruction- Returns:
- The
AType.
-
getDirectFlags
Description copied from class:InstructionAny direct flags for thisInstruction.The return value should be cached statically inside the
Instructionimpl.- Overrides:
getDirectFlagsin classSimpleInstruction- Returns:
- An
EnumBitSetrepresenting the flags. - See Also:
-
accept
Description copied from class:InstructionPass thisInstructionthrough the suppliedInsnVisitor.- Specified by:
acceptin classInstruction- Parameters:
visitor- TheInsnVisitor.ctx- The context.- Returns:
- The return result from the
InsnVisitor.
-
copy
Description copied from class:InstructionDeep copy this instruction.This many not be supported by all instructions.
Implementors should use copy-constructor syntax.
- Specified by:
copyin interfacenet.covers1624.quack.util.Copyable<Instruction>- Overrides:
copyin classInstruction- Returns:
- The copied instruction.
-
getTargetContainerOrNull
-
getTargetContainer
-
getTargetBlock
-
setTargetBlock
-