Package io.quarkus.gizmo
Class LoopImpl
java.lang.Object
io.quarkus.gizmo.BytecodeCreatorImpl
io.quarkus.gizmo.LoopImpl
- All Implemented Interfaces:
BytecodeCreator,Loop,AutoCloseable
- Direct Known Subclasses:
ForEachLoopImpl,WhileLoopImpl
-
Nested Class Summary
Nested classes/interfaces inherited from class io.quarkus.gizmo.BytecodeCreatorImpl
BytecodeCreatorImpl.AssignOperation, BytecodeCreatorImpl.BlockOperation, BytecodeCreatorImpl.IfOperation, BytecodeCreatorImpl.InvokeOperation, BytecodeCreatorImpl.JumpOperation, BytecodeCreatorImpl.NewInstanceOperation, BytecodeCreatorImpl.Operation -
Field Summary
Fields inherited from class io.quarkus.gizmo.BytecodeCreatorImpl
MAX_STRING_LENGTH, operations -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionblock()The block inside the loop.voiddoBreak(BytecodeCreator creator) Writes bytecode into the providedBytecodeCreatorto make it exit the loop, effectively issuing a Java 'break' statement.voiddoContinue(BytecodeCreator creator) Writes bytecode into the providedBytecodeCreatorto make it jump back to the start of the loop, effectively issuing a Java 'continue' statement.protected abstract BranchResultresult()protected voidwriteOperations(org.objectweb.asm.MethodVisitor visitor) Methods inherited from class io.quarkus.gizmo.BytecodeCreatorImpl
add, allocateLocalVariables, arrayLength, assign, bitwiseAnd, bitwiseOr, bitwiseXor, breakScope, checkCast, checkScope, checkScope, compareDouble, compareFloat, compareLong, continueScope, convertPrimitive, createFunction, createNewInstanceOp, createScope, createVariable, divide, enumSwitch, findActiveResultHandles, forEach, getBottom, getMethod, getMethodParam, getOwner, getThis, getTop, ifFalse, ifGreaterEqualZero, ifGreaterThanZero, ifIntegerEqual, ifIntegerGreaterEqual, ifIntegerGreaterThan, ifIntegerLessEqual, ifIntegerLessThan, ifLessEqualZero, ifLessThanZero, ifNonZero, ifNotNull, ifNull, ifReferencesEqual, ifReferencesNotEqual, ifThenElse, ifTrue, ifZero, instanceOf, invokeInterfaceMethod, invokeSpecialInterfaceMethod, invokeSpecialMethod, invokeStaticInterfaceMethod, invokeStaticMethod, invokeVirtualMethod, isScopedWithin, jumpTo, load, load, load, load, load, load, load, load, load, loadClass, loadClassFromTCCL, loadNull, loadResultHandle, loadResultHandle, multiply, newArray, newInstance, readArrayValue, readInstanceField, readStaticField, remainder, resolve, resolve, resolve, resolve, returnValue, storeResultHandle, stringSwitch, subtract, throwException, tryBlock, whileLoop, writeArrayValue, writeInstanceField, writeInteriorOperations, writeStaticFieldMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.quarkus.gizmo.BytecodeCreator
breakScope, checkCast, close, continueScope, createVariable, increment, instanceOf, invokeInterfaceMethod, invokeSpecialInterfaceMethod, invokeSpecialMethod, invokeStaticInterfaceMethod, invokeStaticMethod, invokeVirtualMethod, load, loadClass, loadClass, loadClassFromTCCL, loadClassFromTCCL, marshalAsArray, newArray, newArray, newArray, newInstance, readArrayValue, readInstanceField, readStaticField, returnBoolean, returnInt, returnNull, returnVoid, throwException, throwException, writeArrayValue, writeInstanceField, writeStaticField
-
Constructor Details
-
LoopImpl
LoopImpl(BytecodeCreatorImpl enclosing)
-
-
Method Details
-
result
-
writeOperations
protected void writeOperations(org.objectweb.asm.MethodVisitor visitor) - Overrides:
writeOperationsin classBytecodeCreatorImpl
-
block
Description copied from interface:LoopThe block inside the loop. -
doContinue
Description copied from interface:LoopWrites bytecode into the providedBytecodeCreatorto make it jump back to the start of the loop, effectively issuing a Java 'continue' statement. Generally this will be applied to a branch of an if statement.- Specified by:
doContinuein interfaceLoop- Parameters:
creator- The creator that should return to the start of the loop
-
doBreak
Description copied from interface:LoopWrites bytecode into the providedBytecodeCreatorto make it exit the loop, effectively issuing a Java 'break' statement. Generally this will be applied to a branch of an if statement.
-