## Uses of Interface
org.optaplanner.core.impl.heuristic.selector.Selector

- Packages that use Selector
  Package | Description
  --- | ---
  org.optaplanner.core.impl.heuristic.selector |
  org.optaplanner.core.impl.heuristic.selector.common.decorator |
  org.optaplanner.core.impl.heuristic.selector.entity |
  org.optaplanner.core.impl.heuristic.selector.entity.decorator |
  org.optaplanner.core.impl.heuristic.selector.entity.mimic |
  org.optaplanner.core.impl.heuristic.selector.entity.nearby |
  org.optaplanner.core.impl.heuristic.selector.entity.pillar |
  org.optaplanner.core.impl.heuristic.selector.move |
  org.optaplanner.core.impl.heuristic.selector.move.composite |
  org.optaplanner.core.impl.heuristic.selector.move.decorator |
  org.optaplanner.core.impl.heuristic.selector.move.factory |
  org.optaplanner.core.impl.heuristic.selector.move.generic |
  org.optaplanner.core.impl.heuristic.selector.move.generic.chained |
  org.optaplanner.core.impl.heuristic.selector.value |
  org.optaplanner.core.impl.heuristic.selector.value.chained |
  org.optaplanner.core.impl.heuristic.selector.value.decorator |
  org.optaplanner.core.impl.heuristic.selector.value.mimic |
  org.optaplanner.core.impl.heuristic.selector.value.nearby |

- - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector

    Subinterfaces of Selector in org.optaplanner.core.impl.heuristic.selector
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `IterableSelector<T>` |
    `interface` | `ListIterableSelector<T>` |

    Classes in org.optaplanner.core.impl.heuristic.selector that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractSelector` | Abstract superclass for `Selector`.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.common.decorator

    Classes in org.optaplanner.core.impl.heuristic.selector.common.decorator with type parameters of type Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `FixedSelectorProbabilityWeightFactory<Solution_,​Selector_ extends Selector>` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.entity

    Subinterfaces of Selector in org.optaplanner.core.impl.heuristic.selector.entity
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `EntitySelector` | Selects instances of 1 `PlanningEntity` annotated class.

    Classes in org.optaplanner.core.impl.heuristic.selector.entity that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractEntitySelector` | Abstract superclass for `EntitySelector`.
    `class` | `FromSolutionEntitySelector` | This is the common `EntitySelector` implementation.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.entity.decorator

    Classes in org.optaplanner.core.impl.heuristic.selector.entity.decorator that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractCachingEntitySelector` |
    `class` | `CachingEntitySelector` | A `EntitySelector` that caches the result of its child `EntitySelector`.
    `class` | `FilteringEntitySelector` |
    `class` | `ProbabilityEntitySelector` |
    `class` | `SelectedCountLimitEntitySelector` |
    `class` | `ShufflingEntitySelector` |
    `class` | `SortingEntitySelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.entity.mimic

    Classes in org.optaplanner.core.impl.heuristic.selector.entity.mimic that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MimicRecordingEntitySelector` |
    `class` | `MimicReplayingEntitySelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.entity.nearby

    Classes in org.optaplanner.core.impl.heuristic.selector.entity.nearby that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `NearEntityNearbyEntitySelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.entity.pillar

    Subinterfaces of Selector in org.optaplanner.core.impl.heuristic.selector.entity.pillar
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `PillarSelector` | A pillar is a `List` of entities that have the same planning value for each (or a subset) of their planning values.

    Classes in org.optaplanner.core.impl.heuristic.selector.entity.pillar that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DefaultPillarSelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.move

    Subinterfaces of Selector in org.optaplanner.core.impl.heuristic.selector.move
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `MoveSelector` | Generates `Move`s.

    Classes in org.optaplanner.core.impl.heuristic.selector.move that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractMoveSelector` | Abstract superclass for `MoveSelector`.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.move.composite

    Classes in org.optaplanner.core.impl.heuristic.selector.move.composite that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `CartesianProductMoveSelector` | A `CompositeMoveSelector` that Cartesian products 2 or more `MoveSelector`s.
    `class` | `CompositeMoveSelector` | Abstract superclass for every composite `MoveSelector`.
    `class` | `UnionMoveSelector` | A `CompositeMoveSelector` that unions 2 or more `MoveSelector`s.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.move.decorator

    Classes in org.optaplanner.core.impl.heuristic.selector.move.decorator that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractCachingMoveSelector` |
    `class` | `CachingMoveSelector` | A `MoveSelector` that caches the result of its child `MoveSelector`.
    `class` | `FilteringMoveSelector` |
    `class` | `ProbabilityMoveSelector` |
    `class` | `SelectedCountLimitMoveSelector` |
    `class` | `ShufflingMoveSelector` |
    `class` | `SortingMoveSelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.move.factory

    Classes in org.optaplanner.core.impl.heuristic.selector.move.factory that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MoveIteratorFactoryToMoveSelectorBridge` | Bridges a `MoveIteratorFactory` to a `MoveSelector`.
    `class` | `MoveListFactoryToMoveSelectorBridge` | Bridges a `MoveListFactory` to a `MoveSelector`.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.move.generic

    Classes in org.optaplanner.core.impl.heuristic.selector.move.generic that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ChangeMoveSelector` |
    `class` | `GenericMoveSelector` | Abstract superclass for every generic `MoveSelector`.
    `class` | `PillarChangeMoveSelector` |
    `class` | `PillarSwapMoveSelector` |
    `class` | `SwapMoveSelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.move.generic.chained

    Classes in org.optaplanner.core.impl.heuristic.selector.move.generic.chained that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `KOptMoveSelector` |
    `class` | `SubChainChangeMoveSelector` |
    `class` | `SubChainSwapMoveSelector` |
    `class` | `TailChainSwapMoveSelector` | Also known as a 2-opt move selector.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.value

    Subinterfaces of Selector in org.optaplanner.core.impl.heuristic.selector.value
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `EntityIndependentValueSelector` |
    `interface` | `ValueSelector` | Selects values from the `ValueRangeProvider` for a `PlanningVariable` annotated property.

    Classes in org.optaplanner.core.impl.heuristic.selector.value that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractValueSelector` | Abstract superclass for `ValueSelector`.
    `class` | `FromEntityPropertyValueSelector<Solution_>` | This is the common `ValueSelector` implementation.
    `class` | `FromSolutionPropertyValueSelector` | This is the common `ValueSelector` implementation.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.value.chained

    Subinterfaces of Selector in org.optaplanner.core.impl.heuristic.selector.value.chained
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `SubChainSelector` |

    Classes in org.optaplanner.core.impl.heuristic.selector.value.chained that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DefaultSubChainSelector` | This is the common `SubChainSelector` implementation.

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.value.decorator

    Classes in org.optaplanner.core.impl.heuristic.selector.value.decorator that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractCachingValueSelector` |
    `class` | `CachingValueSelector` | A `ValueSelector` that caches the result of its child `ValueSelector`.
    `class` | `DowncastingValueSelector` |
    `class` | `EntityDependentSortingValueSelector` |
    `class` | `EntityIndependentFilteringValueSelector` |
    `class` | `EntityIndependentInitializedValueSelector` |
    `class` | `FilteringValueSelector` |
    `class` | `InitializedValueSelector` | Prevents creating chains without an anchor.
    `class` | `ProbabilityValueSelector` |
    `class` | `ReinitializeVariableValueSelector` | Prevents reassigning of already initialized variables during Construction Heuristics and Exhaustive Search.
    `class` | `SelectedCountLimitValueSelector` |
    `class` | `ShufflingValueSelector` |
    `class` | `SortingValueSelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.value.mimic

    Classes in org.optaplanner.core.impl.heuristic.selector.value.mimic that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MimicRecordingValueSelector` |
    `class` | `MimicReplayingValueSelector` |

  - ### Uses of Selector in org.optaplanner.core.impl.heuristic.selector.value.nearby

    Classes in org.optaplanner.core.impl.heuristic.selector.value.nearby that implement Selector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `NearEntityNearbyValueSelector` |