Package io.quarkus.gizmo
Class ClassTransfromerMethodCreatorImpl
- java.lang.Object
-
- io.quarkus.gizmo.BytecodeCreatorImpl
-
- io.quarkus.gizmo.MethodCreatorImpl
-
- io.quarkus.gizmo.ClassTransfromerMethodCreatorImpl
-
- All Implemented Interfaces:
AnnotatedElement,BytecodeCreator,MemberCreator<MethodCreator>,MethodCreator,SignatureElement<MethodCreator>,java.lang.AutoCloseable
class ClassTransfromerMethodCreatorImpl extends MethodCreatorImpl
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classClassTransfromerMethodCreatorImpl.ClassTransformerEnumSwitchImpl<E extends java.lang.Enum<E>>-
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 Modifier and Type Field Description private ClassTransformertransformer-
Fields inherited from class io.quarkus.gizmo.BytecodeCreatorImpl
MAX_STRING_LENGTH, operations
-
-
Constructor Summary
Constructors Constructor Description ClassTransfromerMethodCreatorImpl(MethodDescriptor methodDescriptor, ClassTransformer transformer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FunctionCreatorcreateFunction(java.lang.Class<?> functionalInterface)Creates an instance of a functional interface<E extends java.lang.Enum<E>>
Switch.EnumSwitch<E>enumSwitch(ResultHandle value, java.lang.Class<E> enumClass)Create a new switch construct for an enum constant.-
Methods inherited from class io.quarkus.gizmo.MethodCreatorImpl
addAnnotation, addException, addFunctionBody, getClassCreator, getClassOutput, getDeclaringClassName, getExceptions, getMethodDescriptor, getModifiers, getParameterAnnotations, getSignature, resolve, resolve, setModifiers, setParameterNames, setSignature, toString, write
-
Methods inherited from class io.quarkus.gizmo.BytecodeCreatorImpl
add, allocateLocalVariables, arrayLength, assign, bitwiseAnd, bitwiseOr, bitwiseXor, breakScope, checkCast, checkScope, checkScope, compareDouble, compareFloat, compareLong, continueScope, convertPrimitive, createNewInstanceOp, createScope, createVariable, divide, 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, returnValue, storeResultHandle, stringSwitch, subtract, throwException, tryBlock, whileLoop, writeArrayValue, writeInstanceField, writeInteriorOperations, writeOperations, writeStaticField
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.quarkus.gizmo.AnnotatedElement
addAnnotation, addAnnotation, addAnnotation
-
Methods inherited from interface io.quarkus.gizmo.BytecodeCreator
add, arrayLength, assign, bitwiseAnd, bitwiseOr, bitwiseXor, breakScope, breakScope, checkCast, checkCast, close, compareDouble, compareFloat, compareLong, continueScope, continueScope, convertPrimitive, createScope, createVariable, createVariable, divide, forEach, getMethodParam, getThis, ifFalse, ifGreaterEqualZero, ifGreaterThanZero, ifIntegerEqual, ifIntegerGreaterEqual, ifIntegerGreaterThan, ifIntegerLessEqual, ifIntegerLessThan, ifLessEqualZero, ifLessThanZero, ifNonZero, ifNotNull, ifNull, ifReferencesEqual, ifReferencesNotEqual, ifThenElse, ifTrue, ifZero, increment, instanceOf, instanceOf, invokeInterfaceMethod, invokeInterfaceMethod, invokeSpecialInterfaceMethod, invokeSpecialInterfaceMethod, invokeSpecialMethod, invokeSpecialMethod, invokeStaticInterfaceMethod, invokeStaticInterfaceMethod, invokeStaticMethod, invokeStaticMethod, invokeVirtualMethod, invokeVirtualMethod, isScopedWithin, load, load, load, load, load, load, load, load, load, load, loadClass, loadClass, loadClass, loadClassFromTCCL, loadClassFromTCCL, loadClassFromTCCL, loadNull, marshalAsArray, multiply, newArray, newArray, newArray, newArray, newInstance, newInstance, readArrayValue, readArrayValue, readInstanceField, readInstanceField, readStaticField, readStaticField, remainder, returnBoolean, returnInt, returnNull, returnValue, returnVoid, stringSwitch, subtract, throwException, throwException, throwException, tryBlock, whileLoop, writeArrayValue, writeArrayValue, writeInstanceField, writeInstanceField, writeStaticField, writeStaticField
-
Methods inherited from interface io.quarkus.gizmo.MethodCreator
addException
-
-
-
-
Field Detail
-
transformer
private final ClassTransformer transformer
-
-
Constructor Detail
-
ClassTransfromerMethodCreatorImpl
ClassTransfromerMethodCreatorImpl(MethodDescriptor methodDescriptor, ClassTransformer transformer)
-
-
Method Detail
-
createFunction
public FunctionCreator createFunction(java.lang.Class<?> functionalInterface)
Description copied from interface:BytecodeCreatorCreates an instance of a functional interfaceThe resulting
FunctionCreatorcan be used to both define the functions bytecode, and to get aResultHandlethat represents the instance of the function.- Specified by:
createFunctionin interfaceBytecodeCreator- Overrides:
createFunctionin classBytecodeCreatorImpl- Parameters:
functionalInterface- A functional interface- Returns:
- The function builder
-
enumSwitch
public <E extends java.lang.Enum<E>> Switch.EnumSwitch<E> enumSwitch(ResultHandle value, java.lang.Class<E> enumClass)
Description copied from interface:BytecodeCreatorCreate a new switch construct for an enum constant.- Specified by:
enumSwitchin interfaceBytecodeCreator- Overrides:
enumSwitchin classBytecodeCreatorImpl- Parameters:
value- The enum constant to switch on- Returns:
- the switch construct
-
-