Package org.gradle.tooling.model.cpp

## Interface CompilationDetails

-     @Incubating
      public interface CompilationDetails

  Represents the compilation details for a binary.
  Since:
    4.10

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<String>` | `getAdditionalArgs()` | Returns any additional compiler arguments not included in the search paths and macro directives of this binary.
    `File` | `getCompilerExecutable()` | Returns the compiler executable that is used to compile this binary.
    `Task` | `getCompileTask()` | Returns the details of the compilation task for this binary.
    `File` | `getCompileWorkingDir()` | Returns the working directory that the compiler is invoked from when compiling the source of this binary.
    `List<File>` | `getFrameworkSearchPaths()` | Returns the framework search paths for this binary.
    `Set<File>` | `getHeaderDirs()` | Returns the header directories for this binary.
    `DomainObjectSet<? extends MacroDirective>` | `getMacroDefines()` | Returns the macro define directives for this binary.
    `Set<String>` | `getMacroUndefines()` | Returns the macro undefine directives for this binary.
    `DomainObjectSet<? extends SourceFile>` | `getSources()` | Returns the source files for this binary.
    `List<File>` | `getSystemHeaderSearchPaths()` | Returns the system search paths for this binary.
    `List<File>` | `getUserHeaderSearchPaths()` | Returns the user search paths for this binary.

- - ### Method Detail

    - #### getCompileTask

          Task getCompileTask()

      Returns the details of the compilation task for this binary. This is the task that should be run to produce the object files, but may not necessarily be the task that compiles the source files. For example, the task may perform some post processing of the object files.

    - #### getCompilerExecutable

          @Nullable
          File getCompilerExecutable()

      Returns the compiler executable that is used to compile this binary.
      Returns:
        The compiler executable or `null` if the compiler for this binary is not available.

    - #### getCompileWorkingDir

          File getCompileWorkingDir()

      Returns the working directory that the compiler is invoked from when compiling the source of this binary.

    - #### getFrameworkSearchPaths

          List<File> getFrameworkSearchPaths()

      Returns the framework search paths for this binary.

    - #### getSystemHeaderSearchPaths

          List<File> getSystemHeaderSearchPaths()

      Returns the system search paths for this binary.

    - #### getUserHeaderSearchPaths

          List<File> getUserHeaderSearchPaths()

      Returns the user search paths for this binary. This includes the header directories for the binary itself, plus any dependencies of the binary.

    - #### getSources

          DomainObjectSet<? extends SourceFile> getSources()

      Returns the source files for this binary.

    - #### getHeaderDirs

          Set<File> getHeaderDirs()

      Returns the header directories for this binary. These are also included in the result of `getUserHeaderSearchPaths()`.

    - #### getMacroDefines

          DomainObjectSet<? extends MacroDirective> getMacroDefines()

      Returns the macro define directives for this binary.

    - #### getMacroUndefines

          Set<String> getMacroUndefines()

      Returns the macro undefine directives for this binary.

    - #### getAdditionalArgs

          List<String> getAdditionalArgs()

      Returns any additional compiler arguments not included in the search paths and macro directives of this binary.