Class GizmoSolutionClonerImplementor
java.lang.Object
org.optaplanner.core.impl.domain.solution.cloner.gizmo.GizmoSolutionClonerImplementor
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic io.quarkus.gizmo.ClassOutput
createClassOutputWithDebuggingCapability
(MutableReference<byte[]> classBytecodeHolder) static <T> SolutionCloner<T>
createClonerFor
(SolutionDescriptor<T> solutionDescriptor, GizmoClassLoader gizmoClassLoader) static void
defineClonerFor
(io.quarkus.gizmo.ClassCreator classCreator, SolutionDescriptor<?> solutionDescriptor, Set<Class<?>> solutionClassSet, Map<Class<?>, GizmoSolutionOrEntityDescriptor> memoizedSolutionOrEntityDescriptorMap, Set<Class<?>> deepClonedClassSet) Generates the constructor and implementations of SolutionCloner methods for the given SolutionDescriptor using the given ClassCreatorstatic Comparator<Class<?>>
getInstanceOfComparator
(Set<Class<?>> deepClonedClassSet) Return a comparator that sorts classes into instanceof check order.
-
Field Details
-
DEBUG
public static final boolean DEBUG- See Also:
-
-
Method Details
-
getInstanceOfComparator
Return a comparator that sorts classes into instanceof check order. In particular, if x is a subclass of y, then x will appear earlier than y in the list.- Parameters:
deepClonedClassSet
- The set of classes to generate a comparator for- Returns:
- A comparator that sorts classes from deepClonedClassSet such that x < y if x is assignable from y.
-
defineClonerFor
public static void defineClonerFor(io.quarkus.gizmo.ClassCreator classCreator, SolutionDescriptor<?> solutionDescriptor, Set<Class<?>> solutionClassSet, Map<Class<?>, GizmoSolutionOrEntityDescriptor> memoizedSolutionOrEntityDescriptorMap, Set<Class<?>> deepClonedClassSet) Generates the constructor and implementations of SolutionCloner methods for the given SolutionDescriptor using the given ClassCreator- Parameters:
classCreator
- ClassCreator to write output tosolutionDescriptor
- SolutionDescriptor to generate MemberAccessor methods implementation for
-
createClassOutputWithDebuggingCapability
public static io.quarkus.gizmo.ClassOutput createClassOutputWithDebuggingCapability(MutableReference<byte[]> classBytecodeHolder) -
createClonerFor
public static <T> SolutionCloner<T> createClonerFor(SolutionDescriptor<T> solutionDescriptor, GizmoClassLoader gizmoClassLoader)
-