org.gradle.language.nativeplatform.tasks

## Class Depend

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.language.nativeplatform.tasks.Depend

- All Implemented Interfaces:
    Comparable<Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.TaskInternal, ExtensionAware, Task, org.gradle.util.Configurable<Task>

      @NonNullApi
      @Incubating
      public class Depend
      extends DefaultTask

  Responsible for detecting headers which are inputs to a native compilation task.
  Since:
    4.3

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Task

      `Task.Namer`

  - ### Field Summary

    - ### Fields inherited from interface org.gradle.api.Task

      `TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Depend(org.gradle.internal.hash.FileHasher hasher, org.gradle.language.nativeplatform.internal.incremental.CompilationStateCacheFactory compilationStateCacheFactory, org.gradle.api.internal.file.collections.DirectoryFileTreeFactory directoryFileTreeFactory)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `detectHeaders(IncrementalTaskInputs incrementalTaskInputs)`
    `RegularFileProperty` | `getHeaderDependenciesFile()`
    `Property<Boolean>` | `getImportsAreIncludes()`
    `protected Collection<String>` | `getIncludePaths()`
    `ConfigurableFileCollection` | `getSource()` Returns the source files to be compiled.
    `void` | `includes(Object includeRoots)` Add directories where the compiler should search for header files.
    `void` | `source(Object sourceFiles)` Adds a set of source files to be compiled.

    - ### Methods inherited from class org.gradle.api.internal.AbstractTask

      `addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, newInputDirectory, newInputFile, newOutputDirectory, newOutputFile, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString`

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

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

- - ### Constructor Detail

    - #### Depend

          @Inject
          public Depend(org.gradle.internal.hash.FileHasher hasher,
                       org.gradle.language.nativeplatform.internal.incremental.CompilationStateCacheFactory compilationStateCacheFactory,
                       org.gradle.api.internal.file.collections.DirectoryFileTreeFactory directoryFileTreeFactory)

  - ### Method Detail

    - #### detectHeaders

          public void detectHeaders(IncrementalTaskInputs incrementalTaskInputs)
                             throws IOException

      Throws:
        `IOException`

    - #### getIncludePaths

          @Input
          protected Collection<String> getIncludePaths()

    - #### includes

          public void includes(Object includeRoots)

      Add directories where the compiler should search for header files.

    - #### getSource

          @InputFiles
          @SkipWhenEmpty
          public ConfigurableFileCollection getSource()

      Returns the source files to be compiled.

    - #### source

          public void source(Object sourceFiles)

      Adds a set of source files to be compiled. The provided sourceFiles object is evaluated as per `Project.files(Object...)`.

    - #### getHeaderDependenciesFile

          @OutputFile
          public RegularFileProperty getHeaderDependenciesFile()

    - #### getImportsAreIncludes

          @Input
          public Property<Boolean> getImportsAreIncludes()