## Uses of Interface
org.cpsolver.ifs.assignment.context.AssignmentContextHolder

- Packages that use AssignmentContextHolder
  Package | Description
  --- | ---
  org.cpsolver.ifs.assignment | An assignment holds current values of all the variables of a model.
  org.cpsolver.ifs.assignment.context | Assignment context can be used by a class (e.g., a constraint, a extension, a neighborhood selection, or a criterion) to contain any assignment dependent data.

- - ### Uses of AssignmentContextHolder in org.cpsolver.ifs.assignment

    Fields in org.cpsolver.ifs.assignment declared as AssignmentContextHolder
    Modifier and Type | Field and Description
    --- | ---
    `protected AssignmentContextHolder<V,T>` | AssignmentAbstract.`iContexts`

    Constructors in org.cpsolver.ifs.assignment with parameters of type AssignmentContextHolder
    Constructor and Description
    `AssignmentAbstract(AssignmentContextHolder<V,T> contexts)` Constructor
    `AssignmentArray(AssignmentContextHolder<V,T> contexts)` Creates an empty assignment
    `AssignmentMap(AssignmentContextHolder<V,T> contexts)` Creates an empty assignment
    `DefaultParallelAssignment(AssignmentContextHolder<V,T> contexts, int threadIndex, Solution<V,T> solution)`

  - ### Uses of AssignmentContextHolder in org.cpsolver.ifs.assignment.context

    Classes in org.cpsolver.ifs.assignment.context that implement AssignmentContextHolder
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AssignmentContextHolderArray<V extends Variable<V,T>,T extends Value<V,T>>` A simple assignment context holder implementation using array to store all the assignment contexts.
    `class` | `AssignmentContextHolderMap<V extends Variable<V,T>,T extends Value<V,T>>` A simple assignment context holder implementation using `HashMap` to store all the assignment contexts.
    `class` | `DefaultParallelAssignmentContextHolder<V extends Variable<V,T>,T extends Value<V,T>>` A simple assignment context holder implementation used by the `DefaultParallelAssignment` class.
    `class` | `DefaultSingleAssignmentContextHolder<V extends Variable<V,T>,T extends Value<V,T>>` A simple assignment context holder implementation used by the `DefaultSingleAssignment` class.
    `class` | `InheritedAssignmentContextHolder<V extends Variable<V,T>,T extends Value<V,T>>` A variant of the `AssignmentContextHolderMap` that is used by the `InheritedAssignment` class.