aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-07-20 23:44:11 +0800
committershedaniel <daniel@shedaniel.me>2021-07-20 23:44:11 +0800
commit695863367fb42d6435a36aea9290cb9eb1638ced (patch)
treea4f6b94be3632d880245c064dbf99ead5a64f83e /src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
parentcea80b01195be2ab6bd5cdadbcf7fa7b2972e131 (diff)
downloadarchitectury-loom-695863367fb42d6435a36aea9290cb9eb1638ced.tar.gz
architectury-loom-695863367fb42d6435a36aea9290cb9eb1638ced.tar.bz2
architectury-loom-695863367fb42d6435a36aea9290cb9eb1638ced.zip
Fix merge conflicts
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java')
-rw-r--r--src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java b/src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
index e4d3e930..146be30d 100644
--- a/src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
+++ b/src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
@@ -26,17 +26,25 @@ package net.fabricmc.loom.api;
import java.io.File;
import java.util.List;
+import java.util.Set;
+import java.util.function.Consumer;
+import java.util.function.Supplier;
import org.gradle.api.Action;
import org.gradle.api.NamedDomainObjectContainer;
import org.gradle.api.artifacts.Dependency;
import org.gradle.api.file.ConfigurableFileCollection;
+import org.gradle.api.provider.Property;
+import org.gradle.api.tasks.SourceSet;
import org.jetbrains.annotations.ApiStatus;
import net.fabricmc.loom.api.decompilers.LoomDecompiler;
+import net.fabricmc.loom.configuration.ide.RunConfig;
import net.fabricmc.loom.configuration.ide.RunConfigSettings;
+import net.fabricmc.loom.configuration.launch.LaunchProviderSettings;
import net.fabricmc.loom.configuration.processors.JarProcessor;
import net.fabricmc.loom.configuration.providers.mappings.LayeredMappingSpecBuilder;
+import net.fabricmc.loom.util.ModPlatform;
/**
* This is the public api available exposed to build scripts.
@@ -88,4 +96,67 @@ public interface LoomGradleExtensionAPI {
void setCustomManifest(String customManifest);
String getCustomManifest();
+
+ // ===================
+ // Architectury Loom
+ // ===================
+ void silentMojangMappingsLicense();
+
+ boolean isSilentMojangMappingsLicenseEnabled();
+
+ Property<ModPlatform> getPlatform();
+
+ default boolean isForge() {
+ return getPlatform().get() == ModPlatform.FORGE;
+ }
+
+ boolean supportsInclude();
+
+ void setGenerateSrgTiny(Boolean generateSrgTiny);
+
+ boolean shouldGenerateSrgTiny();
+
+ void launches(Action<NamedDomainObjectContainer<LaunchProviderSettings>> action);
+
+ NamedDomainObjectContainer<LaunchProviderSettings> getLaunchConfigs();
+
+ List<String> getDataGenMods();
+
+ default boolean isDataGenEnabled() {
+ return isForge() && !getDataGenMods().isEmpty();
+ }
+
+ void localMods(Action<SourceSetConsumer> action);
+
+ interface SourceSetConsumer {
+ void add(Object... sourceSets);
+ }
+
+ List<Supplier<SourceSet>> getForgeLocalMods();
+
+ void dataGen(Action<DataGenConsumer> action);
+
+ interface DataGenConsumer {
+ void mod(String... modIds);
+ }
+
+ default void addTaskBeforeRun(String task) {
+ this.getTasksBeforeRun().add(task);
+ }
+
+ List<String> getTasksBeforeRun();
+
+ void mixinConfig(String... config);
+
+ List<String> getMixinConfigs();
+
+ void accessTransformer(Object file);
+
+ Set<File> getAccessTransformers();
+
+ boolean isUseFabricMixin();
+
+ void setUseFabricMixin(boolean useFabricMixin);
+
+ List<Consumer<RunConfig>> getSettingsPostEdit();
}