Class ShadowVariableDescriptor<Solution_>
java.lang.Object
ai.timefold.solver.core.impl.domain.variable.descriptor.VariableDescriptor<Solution_>
ai.timefold.solver.core.impl.domain.variable.descriptor.ShadowVariableDescriptor<Solution_>
- Type Parameters:
Solution_- the solution type, the class with thePlanningSolutionannotation
- Direct Known Subclasses:
AnchorShadowVariableDescriptor,CascadingUpdateShadowVariableDescriptor,CustomShadowVariableDescriptor,DeclarativeShadowVariableDescriptor,IndexShadowVariableDescriptor,InverseRelationShadowVariableDescriptor,LegacyCustomShadowVariableDescriptor,NextElementShadowVariableDescriptor,PiggybackShadowVariableDescriptor,PreviousElementShadowVariableDescriptor,ShadowVariableLoopedVariableDescriptor
-
Field Summary
Fields inherited from class ai.timefold.solver.core.impl.domain.variable.descriptor.VariableDescriptor
cachedMetamodel, entityDescriptor, ordinal, simpleEntityAndVariableName, sinkVariableDescriptorList, variableMemberAccessor, variableName -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedShadowVariableDescriptor(int ordinal, EntityDescriptor<Solution_> entityDescriptor, MemberAccessor variableMemberAccessor) -
Method Summary
Modifier and TypeMethodDescriptionabstract Iterable<VariableListenerWithSources<Solution_>>buildVariableListeners(SupplyManager supplyManager) intabstract Demand<?>abstract List<VariableDescriptor<Solution_>>abstract Collection<Class<? extends AbstractVariableListener>>booleanabstract booleanreturn true if the source variable is a list variable; otherwise, return false.abstract voidprocessAnnotations(DescriptorPolicy descriptorPolicy) voidsetGlobalShadowOrder(int globalShadowOrder) toString()Methods inherited from class ai.timefold.solver.core.impl.domain.variable.descriptor.VariableDescriptor
canBeUsedAsSource, getEntityDescriptor, getMemberAccessorSpeedNote, getOrdinal, getSimpleEntityAndVariableName, getSinkVariableDescriptorList, getValue, getVariableMetaModel, getVariableName, getVariablePropertyType, isGenuineAndUninitialized, isListVariable, isValuePotentialAnchor, linkVariableDescriptors, registerSinkVariableDescriptor, setValue
-
Constructor Details
-
ShadowVariableDescriptor
protected ShadowVariableDescriptor(int ordinal, EntityDescriptor<Solution_> entityDescriptor, MemberAccessor variableMemberAccessor)
-
-
Method Details
-
getGlobalShadowOrder
public int getGlobalShadowOrder() -
setGlobalShadowOrder
public void setGlobalShadowOrder(int globalShadowOrder) -
processAnnotations
-
getSourceVariableDescriptorList
- Returns:
- never null, only variables affect this shadow variable directly
-
getVariableListenerClasses
-
getProvidedDemand
- Returns:
- never null
-
hasVariableListener
public boolean hasVariableListener() -
isListVariableSource
public abstract boolean isListVariableSource()return true if the source variable is a list variable; otherwise, return false. -
buildVariableListeners
public abstract Iterable<VariableListenerWithSources<Solution_>> buildVariableListeners(SupplyManager supplyManager) - Parameters:
supplyManager- never null- Returns:
- never null
-
toString
-