## Uses of Interface
org.optaplanner.core.api.domain.solution.cloner.SolutionCloner

- Packages that use SolutionCloner
  Package | Description
  --- | ---
  org.optaplanner.core.api.domain.solution | Domain annotations and support classes for a planning solution.
  org.optaplanner.core.config.solver |
  org.optaplanner.core.impl.domain.policy |
  org.optaplanner.core.impl.domain.solution.cloner |
  org.optaplanner.core.impl.domain.solution.cloner.gizmo |
  org.optaplanner.core.impl.domain.solution.descriptor |

- - ### Uses of SolutionCloner in org.optaplanner.core.api.domain.solution

    Subinterfaces of SolutionCloner in org.optaplanner.core.api.domain.solution
    Modifier and Type | Interface | Description
    --- | --- | ---
    `static interface` | `PlanningSolution.NullSolutionCloner` | Workaround for annotation limitation in `PlanningSolution.solutionCloner()`.

    Methods in org.optaplanner.core.api.domain.solution that return types with arguments of type SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `Class<? extends SolutionCloner>` | `solutionCloner()` | Overrides the default `SolutionCloner` to implement a custom `PlanningSolution` cloning implementation.

  - ### Uses of SolutionCloner in org.optaplanner.core.config.solver

    Fields in org.optaplanner.core.config.solver with type parameters of type SolutionCloner
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Map<String,​SolutionCloner>` | SolverConfig.`gizmoSolutionClonerMap` |

    Methods in org.optaplanner.core.config.solver that return types with arguments of type SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `Map<String,​SolutionCloner>` | SolverConfig.`getGizmoSolutionClonerMap()` |

    Method parameters in org.optaplanner.core.config.solver with type arguments of type SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | SolverConfig.`setGizmoSolutionClonerMap​(Map<String,​SolutionCloner> gizmoSolutionClonerMap)` |
    `SolverConfig` | SolverConfig.`withGizmoSolutionClonerMap​(Map<String,​SolutionCloner> solutionClonerMap)` |

  - ### Uses of SolutionCloner in org.optaplanner.core.impl.domain.policy

    Methods in org.optaplanner.core.impl.domain.policy that return types with arguments of type SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `Map<String,​SolutionCloner>` | DescriptorPolicy.`getGeneratedSolutionClonerMap()` |

    Method parameters in org.optaplanner.core.impl.domain.policy with type arguments of type SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | DescriptorPolicy.`setGeneratedSolutionClonerMap​(Map<String,​SolutionCloner> generatedSolutionClonerMap)` |

  - ### Uses of SolutionCloner in org.optaplanner.core.impl.domain.solution.cloner

    Classes in org.optaplanner.core.impl.domain.solution.cloner that implement SolutionCloner
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `FieldAccessingSolutionCloner<Solution_>` |

  - ### Uses of SolutionCloner in org.optaplanner.core.impl.domain.solution.cloner.gizmo

    Methods in org.optaplanner.core.impl.domain.solution.cloner.gizmo that return SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> SolutionCloner<T>` | GizmoSolutionClonerFactory.`build​(SolutionDescriptor<T> solutionDescriptor)` |
    `static <T> SolutionCloner<T>` | GizmoSolutionClonerImplementor.`createClonerFor​(SolutionDescriptor<T> solutionDescriptor)` |

  - ### Uses of SolutionCloner in org.optaplanner.core.impl.domain.solution.descriptor

    Methods in org.optaplanner.core.impl.domain.solution.descriptor that return SolutionCloner
    Modifier and Type | Method | Description
    --- | --- | ---
    `SolutionCloner<Solution_>` | SolutionDescriptor.`getSolutionCloner()` |