Package com.google.gwt.core.ext.linker

## Class CompilationResult

- java.lang.Object
- - com.google.gwt.core.ext.linker.Artifact<CompilationResult>
  - - com.google.gwt.core.ext.linker.CompilationResult

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Comparable<Artifact<?>>`
  Direct Known Subclasses:
    `DelegatingCompilationResult`

      public abstract class CompilationResult
      extends Artifact<CompilationResult>

  Represents a unique compilation of the module. Multiple permutations may result in identical JavaScript.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `CompilationResult​(java.lang.Class<? extends Linker> linkerType)` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected int` | `compareToComparableArtifact​(CompilationResult o)` | Performs comparison with an artifact of a compatible base type.
    `protected java.lang.Class<CompilationResult>` | `getComparableArtifactType()` | Returns the base type to use for comparisons between Artifacts.
    `abstract java.lang.String[]` | `getJavaScript()` | Returns the JavaScript compilation.
    `abstract int` | `getPermutationId()` | Returns the permutation ID.
    `abstract java.util.SortedSet<java.util.SortedMap<SelectionProperty,​java.lang.String>>` | `getPropertyMap()` | Provides values for `SelectionProperty` instances that are not explicitly set during the compilation phase.
    `abstract SoftPermutation[]` | `getSoftPermutations()` | Returns the permutations of the collapsed deferred-binding property values that are compiled into the CompilationResult.
    `StatementRanges[]` | `getStatementRanges()` | Returns the statement ranges for the JavaScript returned by `getJavaScript()`.
    `abstract java.lang.String` | `getStrongName()` | Return a string that uniquely identifies this compilation result.
    `abstract SymbolData[]` | `getSymbolMap()` | Returns a sorted array of obfuscated symbol names in the compilation to metadata about the symbol.
    `int` | `hashCode()` | The class which is returned from `Artifact.getComparableArtifactType()` must declare a final implementation which returns the same hash code for objects for which `Artifact.compareToComparableArtifact(Artifact)` returns 0.
    `java.lang.String` | `toString()` |

    - ### Methods inherited from class com.google.gwt.core.ext.linker.Artifact

      `compareTo, equals, getLinker, isTransferableFromShards`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### CompilationResult

          protected CompilationResult​(java.lang.Class<? extends Linker> linkerType)

  - ### Method Detail

    - #### getJavaScript

          public abstract java.lang.String[] getJavaScript()

      Returns the JavaScript compilation. The first element of the array contains the code that should be run when the application starts up. The remaining elements are loaded via `GWT.runAsync`. See `AsyncFragmentLoader` for details on the necessary linker support for runAsync.

    - #### getPermutationId

          public abstract int getPermutationId()

      Returns the permutation ID.

    - #### getPropertyMap

          public abstract java.util.SortedSet<java.util.SortedMap<SelectionProperty,​java.lang.String>> getPropertyMap()

      Provides values for `SelectionProperty` instances that are not explicitly set during the compilation phase. This method will return multiple mappings, one for each permutation that resulted in the compilation.

    - #### getSoftPermutations

          public abstract SoftPermutation[] getSoftPermutations()

      Returns the permutations of the collapsed deferred-binding property values that are compiled into the CompilationResult.

    - #### getStatementRanges

          public StatementRanges[] getStatementRanges()

      Returns the statement ranges for the JavaScript returned by `getJavaScript()`. Some subclasses return `null`, in which case there is no statement range information available.

    - #### getStrongName

          public abstract java.lang.String getStrongName()

      Return a string that uniquely identifies this compilation result. Typically this is a cryptographic hash of the compiled data.

    - #### getSymbolMap

          public abstract SymbolData[] getSymbolMap()

      Returns a sorted array of obfuscated symbol names in the compilation to metadata about the symbol. This data can allow for on-the-fly deobfuscation of stack trace information or to allow server components to have in-depth knowledge of the runtime structure of compiled objects.

    - #### hashCode

          public final int hashCode()

      Description copied from class: `Artifact`
      The class which is returned from `Artifact.getComparableArtifactType()` must declare a final implementation which returns the same hash code for objects for which `Artifact.compareToComparableArtifact(Artifact)` returns 0.
      Specified by:
        `hashCode` in class `Artifact<CompilationResult>`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `Artifact<CompilationResult>`

    - #### compareToComparableArtifact

          protected final int compareToComparableArtifact​(CompilationResult o)

      Description copied from class: `Artifact`
      Performs comparison with an artifact of a compatible base type. Objects which compare to 0 are assumed equal, and must return the same `Artifact.hashCode()`.
      Specified by:
        `compareToComparableArtifact` in class `Artifact<CompilationResult>`

    - #### getComparableArtifactType

          protected final java.lang.Class<CompilationResult> getComparableArtifactType()

      Description copied from class: `Artifact`
      Returns the base type to use for comparisons between Artifacts. All concrete implementations of this methods must be final.
      Specified by:
        `getComparableArtifactType` in class `Artifact<CompilationResult>`