add kjsm option for kotlin js command line compiler

This commit is contained in:
Michael Nedzelsky
2015-11-20 15:59:11 +03:00
parent 24e473f47b
commit c80c33efb6
13 changed files with 69 additions and 12 deletions
@@ -57,6 +57,7 @@ public abstract class Config {
private final boolean sourcemap;
private final boolean metaInfo;
private final boolean kjsm;
@NotNull
protected final List<KotlinJavascriptMetadata> metadata = new SmartList<KotlinJavascriptMetadata>();
@@ -72,7 +73,8 @@ public abstract class Config {
@NotNull EcmaVersion ecmaVersion,
boolean sourcemap,
boolean inlineEnabled,
boolean metaInfo
boolean metaInfo,
boolean kjsm
) {
this.project = project;
this.target = ecmaVersion;
@@ -80,6 +82,7 @@ public abstract class Config {
this.sourcemap = sourcemap;
this.inlineEnabled = inlineEnabled;
this.metaInfo = metaInfo;
this.kjsm = kjsm;
}
public boolean isSourcemap() {
@@ -90,6 +93,10 @@ public abstract class Config {
return metaInfo;
}
public boolean isKjsm() {
return kjsm;
}
public boolean isInlineEnabled() {
return inlineEnabled;
}
@@ -70,9 +70,10 @@ public class LibrarySourcesConfig extends Config {
boolean sourceMap,
boolean inlineEnabled,
boolean isUnitTestConfig,
boolean metaInfo
boolean metaInfo,
boolean kjsm
) {
super(project, moduleId, ecmaVersion, sourceMap, inlineEnabled, metaInfo);
super(project, moduleId, ecmaVersion, sourceMap, inlineEnabled, metaInfo, kjsm);
this.files = files;
this.isUnitTestConfig = isUnitTestConfig;
}
@@ -197,6 +198,7 @@ public class LibrarySourcesConfig extends Config {
boolean inlineEnabled = true;
boolean isUnitTestConfig = false;
boolean metaInfo = false;
boolean kjsm = false;
public Builder(@NotNull Project project, @NotNull String moduleId, @NotNull List<String> files) {
this.project = project;
@@ -229,8 +231,13 @@ public class LibrarySourcesConfig extends Config {
return this;
}
public Builder kjsm(boolean kjsm) {
this.kjsm = kjsm;
return this;
}
public Config build() {
return new LibrarySourcesConfig(project, moduleId, files, ecmaVersion, sourceMap, inlineEnabled, isUnitTestConfig, metaInfo);
return new LibrarySourcesConfig(project, moduleId, files, ecmaVersion, sourceMap, inlineEnabled, isUnitTestConfig, metaInfo, kjsm);
}
}