Package io.quarkus.deployment.recording
Class BytecodeRecorderImpl.SplitMethodContext
- java.lang.Object
-
- io.quarkus.deployment.recording.BytecodeRecorderImpl.SplitMethodContext
-
- All Implemented Interfaces:
BytecodeRecorderImpl.MethodContext
,Closeable
,AutoCloseable
- Enclosing class:
- BytecodeRecorderImpl
static class BytecodeRecorderImpl.SplitMethodContext extends Object implements Closeable, BytecodeRecorderImpl.MethodContext
class responsible for splitting the bytecode into smaller methods, to make sure that even large objects and large numbers of invocations do not put us over the method limit.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) List<io.quarkus.gizmo.MethodCreator>
allMethods
(package private) io.quarkus.gizmo.ClassCreator
classCreator
(package private) int
currentCount
(package private) io.quarkus.gizmo.MethodCreator
currentMethod
(package private) Map<Integer,io.quarkus.gizmo.ResultHandle>
currentMethodCache
(package private) io.quarkus.gizmo.ResultHandle
deferredParameterArray
(package private) io.quarkus.gizmo.MethodCreator
mainMethod
(package private) int
methodCount
-
Constructor Summary
Constructors Constructor Description SplitMethodContext(io.quarkus.gizmo.ResultHandle deferredParameterArray, io.quarkus.gizmo.MethodCreator mainMethod, io.quarkus.gizmo.ClassCreator classCreator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
io.quarkus.gizmo.ResultHandle
loadDeferred(BytecodeRecorderImpl.DeferredParameter parameter)
(package private) void
newMethod()
void
writeInstruction(BytecodeRecorderImpl.InstructionGroup writer)
-
-
-
Field Detail
-
deferredParameterArray
final io.quarkus.gizmo.ResultHandle deferredParameterArray
-
mainMethod
final io.quarkus.gizmo.MethodCreator mainMethod
-
classCreator
final io.quarkus.gizmo.ClassCreator classCreator
-
allMethods
List<io.quarkus.gizmo.MethodCreator> allMethods
-
methodCount
int methodCount
-
currentCount
int currentCount
-
currentMethod
io.quarkus.gizmo.MethodCreator currentMethod
-
-
Method Detail
-
writeInstruction
public void writeInstruction(BytecodeRecorderImpl.InstructionGroup writer)
- Specified by:
writeInstruction
in interfaceBytecodeRecorderImpl.MethodContext
-
loadDeferred
public io.quarkus.gizmo.ResultHandle loadDeferred(BytecodeRecorderImpl.DeferredParameter parameter)
- Specified by:
loadDeferred
in interfaceBytecodeRecorderImpl.MethodContext
-
newMethod
void newMethod()
-
close
public void close()
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
-