package com.prezi.spaghetti.gradle.internal.incubating; import org.gradle.api.Action; import org.gradle.api.Incubating; import org.gradle.api.Named; import org.gradle.api.Task; import org.gradle.api.file.SourceDirectorySet; import org.gradle.internal.HasInternalProtocol; /** * A set of sources for a programming language. */ @Incubating @HasInternalProtocol public interface LanguageSourceSet extends Named, BuildableModelElement { // TODO: do we want to keep using SourceDirectorySet in the new API? // would feel more natural if dirs could be added directly to LanguageSourceSet // could also think about extending SourceDirectorySet /** * The source files. */ SourceDirectorySet getSource(); /** * Configure the sources */ void source(Action<? super SourceDirectorySet> config); void generatedBy(Task generatorTask); }