Package org.optaplanner.core.api.domain.variable

## Annotation Type AnchorShadowVariable

-     @Target({METHOD,FIELD})
      @Retention(RUNTIME)
      public @interface AnchorShadowVariable

  Specifies that a bean property (or a field) is the anchor of a chained `PlanningVariable`, which implies it's a shadow variable.

  It is specified on a getter of a java bean property (or a field) of a `PlanningEntity` class.

- - ### Required Element Summary

    Required Elements
    Modifier and Type | Required Element | Description
    --- | --- | ---
    `String` | `sourceVariableName` | The source planning variable is a chained planning variable that leads to the anchor.

- - ### Element Detail

    - #### sourceVariableName

          String sourceVariableName

      The source planning variable is a chained planning variable that leads to the anchor.

      Both the genuine variable and the shadow variable should be consistent: if A chains to B, then A must have the same anchor as B (unless B is the anchor).

      When the `Solver` changes a genuine variable, it adjusts the shadow variable accordingly. In practice, the `Solver` ignores shadow variables (except for consistency housekeeping).

      Returns:
        the variable property name on this entity class that leads to the anchor