gw.lang.gosuc.simple.IGosuCompiler Maven / Gradle / Ivy
package gw.lang.gosuc.simple;
import gw.lang.gosuc.cli.CommandLineOptions;
import java.io.File;
import java.util.Collections;
import java.util.List;
/**
* @author dpetrusca
*/
public interface IGosuCompiler {
default long initializeGosu( List sourceFolders, List classpath, String outputPath ) {
return initializeGosu( sourceFolders, classpath, Collections.emptyList(), outputPath );
}
long initializeGosu( List sourceFolders, List classpath, List backingSourcePath, String outputPath );
/**
* Keeping method for backwards-compatibility with external tooling.
* @deprecated Use uninitializeGosu() instead
*/
default void unitializeGosu() {
uninitializeGosu();
}
void uninitializeGosu();
boolean isPathIgnored(String sourceFile);
boolean compile(File sourceFile, ICompilerDriver driver) throws Exception;
boolean compile( CommandLineOptions options, ICompilerDriver driver );
}