com.google.gwt.core.ext

## Enum RebindMode

- java.lang.Object
- - java.lang.Enum<RebindMode>
  - - com.google.gwt.core.ext.RebindMode

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<RebindMode>

      public enum RebindMode
      extends java.lang.Enum<RebindMode>

  A mode to indicate how incremental generator output should be integrated by the deferred binding implementation. The RebindMode is included as a member of the `RebindResult` returned by `IncrementalGenerator.generateIncrementally(com.google.gwt.core.ext.TreeLogger, com.google.gwt.core.ext.GeneratorContext, java.lang.String)`. It is up to each generator implementation to determine the conditions for reuse of previously generated cached output.
  See Also:
    `RebindResult`, `IncrementalGenerator.generateIncrementally(com.google.gwt.core.ext.TreeLogger, com.google.gwt.core.ext.GeneratorContext, java.lang.String)`

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `USE_ALL_CACHED` Indicates nothing new was generated, only cached output previously generated should be used.
    `USE_ALL_NEW` Indicates only newly generated output should be used.
    `USE_ALL_NEW_WITH_NO_CACHING` Indicates only newly generated output should be used, and no output should be cached.
    `USE_EXISTING` Indicates no generated code is needed to satisfy this rebind.
    `USE_PARTIAL_CACHED` Indicates that a mixture of newly generated and previously cached output should be used.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static RebindMode` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static RebindMode[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### USE_EXISTING

          public static final RebindMode USE_EXISTING

      Indicates no generated code is needed to satisfy this rebind. This mode can be used in cases where the requested type can be used directly as a default instantiable class, or in cases where a generator determines it has already run for the requested type in the current context (e.g. via a failed call to `GeneratorContext.tryCreate(com.google.gwt.core.ext.TreeLogger, java.lang.String, java.lang.String)`).

    - #### USE_ALL_NEW

          public static final RebindMode USE_ALL_NEW

      Indicates only newly generated output should be used. All generated output will be cached.

    - #### USE_ALL_NEW_WITH_NO_CACHING

          public static final RebindMode USE_ALL_NEW_WITH_NO_CACHING

      Indicates only newly generated output should be used, and no output should be cached. This mode should be used when no caching can be taken advantage of, such as for generators which don't implement `IncrementalGenerator.generateIncrementally(com.google.gwt.core.ext.TreeLogger, com.google.gwt.core.ext.GeneratorContext, java.lang.String)`.

    - #### USE_ALL_CACHED

          public static final RebindMode USE_ALL_CACHED

      Indicates nothing new was generated, only cached output previously generated should be used.

    - #### USE_PARTIAL_CACHED

          public static final RebindMode USE_PARTIAL_CACHED

      Indicates that a mixture of newly generated and previously cached output should be used. Types marked with a successful call to `GeneratorContext.tryReuseTypeFromCache(java.lang.String)` should be reused from cache, while everything else committed to the context should be treated as freshly generated output. A new composite cache entry will be created which combines the freshly generated output and the output reused from cache.

  - ### Method Detail

    - #### values

          public static RebindMode[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (RebindMode c : RebindMode.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static RebindMode valueOf(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null