Skip to content

Commit

Permalink
Remove legacy JsInterop.
Browse files Browse the repository at this point in the history
Change-Id: I06a45921eb574ab86647c364d433abe04ea4f0a8
  • Loading branch information
rluble committed Jan 19, 2016
1 parent 3012068 commit dd141d6
Show file tree
Hide file tree
Showing 32 changed files with 86 additions and 628 deletions.
Expand Up @@ -20,7 +20,6 @@
import com.google.gwt.dev.cfg.Properties; import com.google.gwt.dev.cfg.Properties;
import com.google.gwt.dev.jjs.JsOutputOption; import com.google.gwt.dev.jjs.JsOutputOption;
import com.google.gwt.dev.js.JsNamespaceOption; import com.google.gwt.dev.js.JsNamespaceOption;
import com.google.gwt.dev.util.arg.OptionJsInteropMode;
import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode; import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.OptionOptimize; import com.google.gwt.dev.util.arg.OptionOptimize;
import com.google.gwt.dev.util.arg.SourceLevel; import com.google.gwt.dev.util.arg.SourceLevel;
Expand All @@ -42,7 +41,6 @@ class CompilerOptionsImpl extends UnmodifiableCompilerOptions {
private final TreeLogger.Type logLevel; private final TreeLogger.Type logLevel;
private final List<String> moduleNames; private final List<String> moduleNames;
private final SourceLevel sourceLevel; private final SourceLevel sourceLevel;
private final OptionJsInteropMode.Mode jsInteropMode;
private final boolean generateJsInteropExports; private final boolean generateJsInteropExports;
private final OptionMethodNameDisplayMode.Mode methodNameDisplayMode; private final OptionMethodNameDisplayMode.Mode methodNameDisplayMode;
private final ListMultimap<String, String> properties; private final ListMultimap<String, String> properties;
Expand All @@ -56,7 +54,6 @@ class CompilerOptionsImpl extends UnmodifiableCompilerOptions {
this.sourceLevel = options.getSourceLevel(); this.sourceLevel = options.getSourceLevel();
this.failOnError = options.isFailOnError(); this.failOnError = options.isFailOnError();
this.logLevel = options.getLogLevel(); this.logLevel = options.getLogLevel();
this.jsInteropMode = options.getJsInteropMode();
this.generateJsInteropExports = options.shouldGenerateJsInteropExports(); this.generateJsInteropExports = options.shouldGenerateJsInteropExports();
this.methodNameDisplayMode = options.getMethodNameDisplayMode(); this.methodNameDisplayMode = options.getMethodNameDisplayMode();
this.properties = LinkedListMultimap.create(options.getProperties()); this.properties = LinkedListMultimap.create(options.getProperties());
Expand Down Expand Up @@ -94,11 +91,6 @@ public File getGenDir() {
return compileDir.getGenDir(); return compileDir.getGenDir();
} }


@Override
public OptionJsInteropMode.Mode getJsInteropMode() {
return jsInteropMode;
}

@Override @Override
public boolean shouldGenerateJsInteropExports() { public boolean shouldGenerateJsInteropExports() {
return generateJsInteropExports; return generateJsInteropExports;
Expand Down
17 changes: 0 additions & 17 deletions dev/codeserver/java/com/google/gwt/dev/codeserver/Options.java
Expand Up @@ -23,7 +23,6 @@
import com.google.gwt.dev.util.arg.ArgHandlerClosureFormattedOutput; import com.google.gwt.dev.util.arg.ArgHandlerClosureFormattedOutput;
import com.google.gwt.dev.util.arg.ArgHandlerGenerateJsInteropExports; import com.google.gwt.dev.util.arg.ArgHandlerGenerateJsInteropExports;
import com.google.gwt.dev.util.arg.ArgHandlerIncrementalCompile; import com.google.gwt.dev.util.arg.ArgHandlerIncrementalCompile;
import com.google.gwt.dev.util.arg.ArgHandlerJsInteropMode;
import com.google.gwt.dev.util.arg.ArgHandlerLogLevel; import com.google.gwt.dev.util.arg.ArgHandlerLogLevel;
import com.google.gwt.dev.util.arg.ArgHandlerMethodNameDisplayMode; import com.google.gwt.dev.util.arg.ArgHandlerMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.ArgHandlerScriptStyle; import com.google.gwt.dev.util.arg.ArgHandlerScriptStyle;
Expand All @@ -32,7 +31,6 @@
import com.google.gwt.dev.util.arg.OptionClosureFormattedOutput; import com.google.gwt.dev.util.arg.OptionClosureFormattedOutput;
import com.google.gwt.dev.util.arg.OptionGenerateJsInteropExports; import com.google.gwt.dev.util.arg.OptionGenerateJsInteropExports;
import com.google.gwt.dev.util.arg.OptionIncrementalCompile; import com.google.gwt.dev.util.arg.OptionIncrementalCompile;
import com.google.gwt.dev.util.arg.OptionJsInteropMode;
import com.google.gwt.dev.util.arg.OptionLogLevel; import com.google.gwt.dev.util.arg.OptionLogLevel;
import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode; import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.OptionScriptStyle; import com.google.gwt.dev.util.arg.OptionScriptStyle;
Expand Down Expand Up @@ -88,7 +86,6 @@ public class Options {
private SourceLevel sourceLevel = SourceLevel.DEFAULT_SOURCE_LEVEL; private SourceLevel sourceLevel = SourceLevel.DEFAULT_SOURCE_LEVEL;
private boolean failOnError = false; private boolean failOnError = false;
private int compileTestRecompiles = 0; private int compileTestRecompiles = 0;
private OptionJsInteropMode.Mode jsInteropMode = OptionJsInteropMode.Mode.JS_RC;
private boolean generateJsInteropExports = false; private boolean generateJsInteropExports = false;
private OptionMethodNameDisplayMode.Mode methodNameDisplayMode = private OptionMethodNameDisplayMode.Mode methodNameDisplayMode =
OptionMethodNameDisplayMode.Mode.NONE; OptionMethodNameDisplayMode.Mode.NONE;
Expand Down Expand Up @@ -305,10 +302,6 @@ boolean isFailOnError() {
return failOnError; return failOnError;
} }


OptionJsInteropMode.Mode getJsInteropMode() {
return jsInteropMode;
}

boolean shouldGenerateJsInteropExports() { boolean shouldGenerateJsInteropExports() {
return generateJsInteropExports; return generateJsInteropExports;
} }
Expand Down Expand Up @@ -399,16 +392,6 @@ public void setLogLevel(TreeLogger.Type logLevel) {
Options.this.logLevel = logLevel; Options.this.logLevel = logLevel;
} }
})); }));
registerHandler(new ArgHandlerJsInteropMode(new OptionJsInteropMode() {
@Override
public OptionJsInteropMode.Mode getJsInteropMode() {
return Options.this.jsInteropMode;
}

@Override
public void setJsInteropMode(OptionJsInteropMode.Mode mode) {
Options.this.jsInteropMode = mode;
}}));
registerHandler(new ArgHandlerGenerateJsInteropExports(new OptionGenerateJsInteropExports() { registerHandler(new ArgHandlerGenerateJsInteropExports(new OptionGenerateJsInteropExports() {
@Override @Override
public boolean shouldGenerateJsInteropExports() { public boolean shouldGenerateJsInteropExports() {
Expand Down
Expand Up @@ -21,7 +21,6 @@
import com.google.gwt.dev.cfg.Properties; import com.google.gwt.dev.cfg.Properties;
import com.google.gwt.dev.jjs.JsOutputOption; import com.google.gwt.dev.jjs.JsOutputOption;
import com.google.gwt.dev.js.JsNamespaceOption; import com.google.gwt.dev.js.JsNamespaceOption;
import com.google.gwt.dev.util.arg.OptionJsInteropMode;
import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode; import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.SourceLevel; import com.google.gwt.dev.util.arg.SourceLevel;


Expand Down Expand Up @@ -120,11 +119,6 @@ public void setInlineLiteralParameters(boolean inlineLiteralParameters) {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }


@Override
public void setJsInteropMode(OptionJsInteropMode.Mode mode) {
throw new UnsupportedOperationException();
}

@Override @Override
public void setGenerateJsInteropExports(boolean generateExports) { public void setGenerateJsInteropExports(boolean generateExports) {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
Expand Down
2 changes: 0 additions & 2 deletions dev/core/src/com/google/gwt/dev/DevMode.java
Expand Up @@ -37,7 +37,6 @@
import com.google.gwt.dev.util.arg.ArgHandlerExtraDir; import com.google.gwt.dev.util.arg.ArgHandlerExtraDir;
import com.google.gwt.dev.util.arg.ArgHandlerGenerateJsInteropExports; import com.google.gwt.dev.util.arg.ArgHandlerGenerateJsInteropExports;
import com.google.gwt.dev.util.arg.ArgHandlerIncrementalCompile; import com.google.gwt.dev.util.arg.ArgHandlerIncrementalCompile;
import com.google.gwt.dev.util.arg.ArgHandlerJsInteropMode;
import com.google.gwt.dev.util.arg.ArgHandlerMethodNameDisplayMode; import com.google.gwt.dev.util.arg.ArgHandlerMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.ArgHandlerModuleName; import com.google.gwt.dev.util.arg.ArgHandlerModuleName;
import com.google.gwt.dev.util.arg.ArgHandlerModulePathPrefix; import com.google.gwt.dev.util.arg.ArgHandlerModulePathPrefix;
Expand Down Expand Up @@ -247,7 +246,6 @@ public ArgProcessor(HostedModeOptions options) {
registerHandler(new ArgHandlerDisableUpdateCheck(options)); registerHandler(new ArgHandlerDisableUpdateCheck(options));
registerHandler(new ArgHandlerMethodNameDisplayMode(options)); registerHandler(new ArgHandlerMethodNameDisplayMode(options));
registerHandler(new ArgHandlerSourceLevel(options)); registerHandler(new ArgHandlerSourceLevel(options));
registerHandler(new ArgHandlerJsInteropMode(options));
registerHandler(new ArgHandlerGenerateJsInteropExports(options)); registerHandler(new ArgHandlerGenerateJsInteropExports(options));
registerHandler(new ArgHandlerIncrementalCompile(options)); registerHandler(new ArgHandlerIncrementalCompile(options));
registerHandler(new ArgHandlerModuleName(options) { registerHandler(new ArgHandlerModuleName(options) {
Expand Down
Expand Up @@ -39,7 +39,6 @@
import com.google.gwt.dev.util.arg.ArgHandlerGenDir; import com.google.gwt.dev.util.arg.ArgHandlerGenDir;
import com.google.gwt.dev.util.arg.ArgHandlerGenerateJsInteropExports; import com.google.gwt.dev.util.arg.ArgHandlerGenerateJsInteropExports;
import com.google.gwt.dev.util.arg.ArgHandlerIncrementalCompileWarnings; import com.google.gwt.dev.util.arg.ArgHandlerIncrementalCompileWarnings;
import com.google.gwt.dev.util.arg.ArgHandlerJsInteropMode;
import com.google.gwt.dev.util.arg.ArgHandlerJsonSoyc; import com.google.gwt.dev.util.arg.ArgHandlerJsonSoyc;
import com.google.gwt.dev.util.arg.ArgHandlerMethodNameDisplayMode; import com.google.gwt.dev.util.arg.ArgHandlerMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.ArgHandlerMissingDepsFile; import com.google.gwt.dev.util.arg.ArgHandlerMissingDepsFile;
Expand Down Expand Up @@ -81,7 +80,6 @@ public PrecompileTaskArgProcessor(PrecompileTaskOptions options) {
registerHandler(new ArgHandlerFragmentMerge(options)); registerHandler(new ArgHandlerFragmentMerge(options));
registerHandler(new ArgHandlerGenDir(options)); registerHandler(new ArgHandlerGenDir(options));
registerHandler(new ArgHandlerIncrementalCompileWarnings()); registerHandler(new ArgHandlerIncrementalCompileWarnings());
registerHandler(new ArgHandlerJsInteropMode(options));
registerHandler(new ArgHandlerGenerateJsInteropExports(options)); registerHandler(new ArgHandlerGenerateJsInteropExports(options));
registerHandler(new ArgHandlerMethodNameDisplayMode(options)); registerHandler(new ArgHandlerMethodNameDisplayMode(options));
registerHandler(new ArgHandlerMissingDepsFile()); registerHandler(new ArgHandlerMissingDepsFile());
Expand Down
11 changes: 0 additions & 11 deletions dev/core/src/com/google/gwt/dev/PrecompileTaskOptionsImpl.java
Expand Up @@ -20,7 +20,6 @@
import com.google.gwt.dev.jjs.JJSOptionsImpl; import com.google.gwt.dev.jjs.JJSOptionsImpl;
import com.google.gwt.dev.jjs.JsOutputOption; import com.google.gwt.dev.jjs.JsOutputOption;
import com.google.gwt.dev.js.JsNamespaceOption; import com.google.gwt.dev.js.JsNamespaceOption;
import com.google.gwt.dev.util.arg.OptionJsInteropMode;
import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode; import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.SourceLevel; import com.google.gwt.dev.util.arg.SourceLevel;
import com.google.gwt.thirdparty.guava.common.collect.LinkedListMultimap; import com.google.gwt.thirdparty.guava.common.collect.LinkedListMultimap;
Expand Down Expand Up @@ -90,11 +89,6 @@ public File getGenDir() {
return genDir; return genDir;
} }


@Override
public OptionJsInteropMode.Mode getJsInteropMode() {
return jjsOptions.getJsInteropMode();
}

@Override @Override
public boolean shouldGenerateJsInteropExports() { public boolean shouldGenerateJsInteropExports() {
return jjsOptions.shouldGenerateJsInteropExports(); return jjsOptions.shouldGenerateJsInteropExports();
Expand Down Expand Up @@ -274,11 +268,6 @@ public void setInlineLiteralParameters(boolean enabled) {
jjsOptions.setInlineLiteralParameters(enabled); jjsOptions.setInlineLiteralParameters(enabled);
} }


@Override
public void setJsInteropMode(OptionJsInteropMode.Mode mode) {
jjsOptions.setJsInteropMode(mode);
}

@Override @Override
public void setGenerateJsInteropExports(boolean generateExports) { public void setGenerateJsInteropExports(boolean generateExports) {
jjsOptions.setGenerateJsInteropExports(generateExports); jjsOptions.setGenerateJsInteropExports(generateExports);
Expand Down
98 changes: 7 additions & 91 deletions dev/core/src/com/google/gwt/dev/javac/JsInteropUtil.java
Expand Up @@ -16,11 +16,9 @@
package com.google.gwt.dev.javac; package com.google.gwt.dev.javac;


import com.google.gwt.dev.jjs.ast.HasJsInfo.JsMemberType; import com.google.gwt.dev.jjs.ast.HasJsInfo.JsMemberType;
import com.google.gwt.dev.jjs.ast.JClassType;
import com.google.gwt.dev.jjs.ast.JConstructor; import com.google.gwt.dev.jjs.ast.JConstructor;
import com.google.gwt.dev.jjs.ast.JDeclaredType; import com.google.gwt.dev.jjs.ast.JDeclaredType;
import com.google.gwt.dev.jjs.ast.JField; import com.google.gwt.dev.jjs.ast.JField;
import com.google.gwt.dev.jjs.ast.JInterfaceType;
import com.google.gwt.dev.jjs.ast.JMember; import com.google.gwt.dev.jjs.ast.JMember;
import com.google.gwt.dev.jjs.ast.JMethod; import com.google.gwt.dev.jjs.ast.JMethod;
import com.google.gwt.dev.jjs.ast.JPrimitiveType; import com.google.gwt.dev.jjs.ast.JPrimitiveType;
Expand All @@ -32,43 +30,14 @@
* Utility functions to interact with JDT classes for JsInterop. * Utility functions to interact with JDT classes for JsInterop.
*/ */
public final class JsInteropUtil { public final class JsInteropUtil {

public static final String JSEXPORT_CLASS = "com.google.gwt.core.client.js.JsExport";
public static final String JSFUNCTION_CLASS = "com.google.gwt.core.client.js.JsFunction";
public static final String JSNAMESPACE_CLASS = "com.google.gwt.core.client.js.JsNamespace";
public static final String JSNOEXPORT_CLASS = "com.google.gwt.core.client.js.JsNoExport";
public static final String JSPROPERTY_CLASS = "com.google.gwt.core.client.js.JsProperty";
public static final String JSTYPE_CLASS = "com.google.gwt.core.client.js.JsType";
public static final String UNUSABLE_BY_JS = "unusable-by-js"; public static final String UNUSABLE_BY_JS = "unusable-by-js";
public static final String INVALID_JSNAME = "<invalid>"; public static final String INVALID_JSNAME = "<invalid>";


public static boolean isGlobal(String jsNamespace) { public static boolean isGlobal(String jsNamespace) {
return "<global>".equals(jsNamespace); return "<global>".equals(jsNamespace);
} }


public static void maybeSetJsInteropProperties(JDeclaredType type, Annotation... annotations) { public static void maybeSetJsInteropProperties(JDeclaredType type, Annotation[] annotations) {
AnnotationBinding jsType = JdtUtil.getAnnotation(annotations, JSTYPE_CLASS);
String namespace = maybeGetJsNamespace(annotations);
String exportName = maybeGetJsExportName(annotations);
String jsPrototype = JdtUtil.getAnnotationParameterString(jsType, "prototype");
boolean isJsNative = jsPrototype != null;
if (isJsNative) {
int indexOf = jsPrototype.lastIndexOf(".");
namespace = indexOf == -1 ? "" : jsPrototype.substring(0, indexOf);
exportName = jsPrototype.substring(indexOf + 1);
}
boolean isJsType = jsType != null;
boolean isClassWideExport =
isJsNative || JdtUtil.getAnnotation(annotations, JSEXPORT_CLASS) != null;
boolean isJsFunction = JdtUtil.getAnnotation(annotations, JSFUNCTION_CLASS) != null;
boolean canBeImplementedExternally =
(type instanceof JInterfaceType && (isJsType || isJsFunction))
|| (type instanceof JClassType && isJsNative);
type.setJsTypeInfo(isJsType, isJsNative, isJsFunction, namespace, exportName, isClassWideExport,
canBeImplementedExternally);
}

public static void maybeSetJsInteropPropertiesNew(JDeclaredType type, Annotation[] annotations) {
AnnotationBinding jsType = getInteropAnnotation(annotations, "JsType"); AnnotationBinding jsType = getInteropAnnotation(annotations, "JsType");
String namespace = JdtUtil.getAnnotationParameterString(jsType, "namespace"); String namespace = JdtUtil.getAnnotationParameterString(jsType, "namespace");
String name = JdtUtil.getAnnotationParameterString(jsType, "name"); String name = JdtUtil.getAnnotationParameterString(jsType, "name");
Expand All @@ -82,17 +51,10 @@ public static void maybeSetJsInteropPropertiesNew(JDeclaredType type, Annotation


boolean isJsType = jsType != null; boolean isJsType = jsType != null;
boolean isJsFunction = getInteropAnnotation(annotations, "JsFunction") != null; boolean isJsFunction = getInteropAnnotation(annotations, "JsFunction") != null;
boolean canBeImplementedExternally = isJsNative || isJsFunction; type.setJsTypeInfo(isJsType, isJsNative, isJsFunction, namespace, name, isJsType);
type.setJsTypeInfo(isJsType, isJsNative, isJsFunction, namespace, name, isJsType,
canBeImplementedExternally);
}

public static void maybeSetJsInteropProperties(JMethod method, Annotation... annotations) {
boolean isPropertyAccessor = JdtUtil.getAnnotation(annotations, JSPROPERTY_CLASS) != null;
setJsInteropProperties(method, annotations, isPropertyAccessor);
} }


public static void maybeSetJsInteropPropertiesNew( public static void maybeSetJsInteropProperties(
JMethod method, boolean generateExport, Annotation... annotations) { JMethod method, boolean generateExport, Annotation... annotations) {
AnnotationBinding annotation = getInteropAnnotation(annotations, "JsMethod"); AnnotationBinding annotation = getInteropAnnotation(annotations, "JsMethod");
if (annotation == null) { if (annotation == null) {
Expand All @@ -103,52 +65,16 @@ public static void maybeSetJsInteropPropertiesNew(
} }


boolean isPropertyAccessor = getInteropAnnotation(annotations, "JsProperty") != null; boolean isPropertyAccessor = getInteropAnnotation(annotations, "JsProperty") != null;
setJsInteropPropertiesNew(method, annotations, annotation, isPropertyAccessor, generateExport); setJsInteropProperties(method, annotations, annotation, isPropertyAccessor, generateExport);
} }


public static void maybeSetJsInteropProperties(JField field, Annotation... annotations) { public static void maybeSetJsInteropProperties(
if (field.getEnclosingType().isJsNative() && field.isCompileTimeConstant()) {
field.setJsOverlay();
}
setJsInteropProperties(field, annotations, false);
}

public static void maybeSetJsInteropPropertiesNew(
JField field, boolean generateExport, Annotation... annotations) { JField field, boolean generateExport, Annotation... annotations) {
AnnotationBinding annotation = getInteropAnnotation(annotations, "JsProperty"); AnnotationBinding annotation = getInteropAnnotation(annotations, "JsProperty");
setJsInteropPropertiesNew(field, annotations, annotation, false, generateExport); setJsInteropProperties(field, annotations, annotation, false, generateExport);
} }


private static void setJsInteropProperties( private static void setJsInteropProperties(JMember member, Annotation[] annotations,
JMember member, Annotation[] annotations, boolean isPropertyAccessor) {
boolean hasExport = JdtUtil.getAnnotation(annotations, JSEXPORT_CLASS) != null;
JsMemberType memberType = getJsMemberType(member, isPropertyAccessor);
String namespace = maybeGetJsNamespace(annotations);
String exportName = maybeGetJsExportName(annotations);
if (hasExport) {
member.setJsMemberInfo(memberType, namespace, exportName, true);
return;
}

/* Apply class wide JsInterop annotations */

boolean ignore = JdtUtil.getAnnotation(annotations, JSNOEXPORT_CLASS) != null;
if (ignore || (!member.isPublic() && !member.getEnclosingType().isJsNative())) {
return;
}

JDeclaredType enclosingType = member.getEnclosingType();

if (enclosingType.isJsType() && member.needsDynamicDispatch()) {
member.setJsMemberInfo(memberType, namespace, exportName, true);
}

if (enclosingType.isClassWideExport() && !member.needsDynamicDispatch()) {
member.setJsMemberInfo(memberType, namespace, exportName, true);
}
}

private static void setJsInteropPropertiesNew(JMember member, Annotation[] annotations,
AnnotationBinding memberAnnotation, boolean isAccessor, boolean generateExport) { AnnotationBinding memberAnnotation, boolean isAccessor, boolean generateExport) {
if (getInteropAnnotation(annotations, "JsOverlay") != null) { if (getInteropAnnotation(annotations, "JsOverlay") != null) {
member.setJsOverlay(); member.setJsOverlay();
Expand Down Expand Up @@ -195,14 +121,4 @@ private static JsMemberType getJsPropertyAccessorType(JMethod method) {
private static AnnotationBinding getInteropAnnotation(Annotation[] annotations, String name) { private static AnnotationBinding getInteropAnnotation(Annotation[] annotations, String name) {
return JdtUtil.getAnnotation(annotations, "jsinterop.annotations." + name); return JdtUtil.getAnnotation(annotations, "jsinterop.annotations." + name);
} }

private static String maybeGetJsNamespace(Annotation[] annotations) {
AnnotationBinding jsNamespace = JdtUtil.getAnnotation(annotations, JSNAMESPACE_CLASS);
return JdtUtil.getAnnotationParameterString(jsNamespace, "value");
}

private static String maybeGetJsExportName(Annotation[] annotations) {
AnnotationBinding annotation = JdtUtil.getAnnotation(annotations, JSEXPORT_CLASS);
return JdtUtil.getAnnotationParameterString(annotation, "value");
}
} }
3 changes: 1 addition & 2 deletions dev/core/src/com/google/gwt/dev/jjs/JJSOptions.java
Expand Up @@ -27,7 +27,6 @@
import com.google.gwt.dev.util.arg.OptionGenerateJsInteropExports; import com.google.gwt.dev.util.arg.OptionGenerateJsInteropExports;
import com.google.gwt.dev.util.arg.OptionIncrementalCompile; import com.google.gwt.dev.util.arg.OptionIncrementalCompile;
import com.google.gwt.dev.util.arg.OptionInlineLiteralParameters; import com.google.gwt.dev.util.arg.OptionInlineLiteralParameters;
import com.google.gwt.dev.util.arg.OptionJsInteropMode;
import com.google.gwt.dev.util.arg.OptionJsonSoycEnabled; import com.google.gwt.dev.util.arg.OptionJsonSoycEnabled;
import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode; import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.OptionNamespace; import com.google.gwt.dev.util.arg.OptionNamespace;
Expand Down Expand Up @@ -55,7 +54,7 @@ public interface JJSOptions extends OptionOptimize,
OptionRemoveDuplicateFunctions, OptionStrict, OptionRemoveDuplicateFunctions, OptionStrict,
OptionSoycHtmlDisabled, OptionEnableClosureCompiler, OptionSoycHtmlDisabled, OptionEnableClosureCompiler,
OptionFragmentsMerge, OptionFragmentCount, OptionSourceLevel, OptionNamespace, OptionFragmentsMerge, OptionFragmentCount, OptionSourceLevel, OptionNamespace,
OptionCheckedMode, OptionJsInteropMode, OptionGenerateJsInteropExports, OptionUseDetailedTypeIds, OptionCheckedMode, OptionGenerateJsInteropExports, OptionUseDetailedTypeIds,
OptionAllowJDTConstantInlining, OptionMethodNameDisplayMode, OptionAllowJDTConstantInlining, OptionMethodNameDisplayMode,
OptionClosureFormattedOutput { OptionClosureFormattedOutput {
} }
13 changes: 0 additions & 13 deletions dev/core/src/com/google/gwt/dev/jjs/JJSOptionsImpl.java
Expand Up @@ -16,7 +16,6 @@
package com.google.gwt.dev.jjs; package com.google.gwt.dev.jjs;


import com.google.gwt.dev.js.JsNamespaceOption; import com.google.gwt.dev.js.JsNamespaceOption;
import com.google.gwt.dev.util.arg.OptionJsInteropMode;
import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode; import com.google.gwt.dev.util.arg.OptionMethodNameDisplayMode;
import com.google.gwt.dev.util.arg.OptionOptimize; import com.google.gwt.dev.util.arg.OptionOptimize;
import com.google.gwt.dev.util.arg.SourceLevel; import com.google.gwt.dev.util.arg.SourceLevel;
Expand Down Expand Up @@ -51,7 +50,6 @@ public class JJSOptionsImpl implements JJSOptions, Serializable {
private boolean soycExtra = false; private boolean soycExtra = false;
private boolean soycHtmlDisabled = false; private boolean soycHtmlDisabled = false;
private boolean strict = false; private boolean strict = false;
private OptionJsInteropMode.Mode jsInteropMode = OptionJsInteropMode.Mode.JS_RC;
private boolean generateJsInteropExports = false; private boolean generateJsInteropExports = false;
private boolean useDetailedTypeIds = false; private boolean useDetailedTypeIds = false;
private OptionMethodNameDisplayMode.Mode methodNameDisplayMode = private OptionMethodNameDisplayMode.Mode methodNameDisplayMode =
Expand Down Expand Up @@ -85,7 +83,6 @@ public void copyFrom(JJSOptions other) {
setStrict(other.isStrict()); setStrict(other.isStrict());
setSourceLevel(other.getSourceLevel()); setSourceLevel(other.getSourceLevel());
setNamespace(other.getNamespace()); setNamespace(other.getNamespace());
setJsInteropMode(other.getJsInteropMode());
setGenerateJsInteropExports(other.shouldGenerateJsInteropExports()); setGenerateJsInteropExports(other.shouldGenerateJsInteropExports());
setUseDetailedTypeIds(other.useDetailedTypeIds()); setUseDetailedTypeIds(other.useDetailedTypeIds());
setMethodNameDisplayMode(other.getMethodNameDisplayMode()); setMethodNameDisplayMode(other.getMethodNameDisplayMode());
Expand Down Expand Up @@ -346,16 +343,6 @@ public boolean shouldRemoveDuplicateFunctions() {
return removeDuplicateFunctions; return removeDuplicateFunctions;
} }


@Override
public OptionJsInteropMode.Mode getJsInteropMode() {
return jsInteropMode;
}

@Override
public void setJsInteropMode(OptionJsInteropMode.Mode mode) {
jsInteropMode = mode;
}

@Override @Override
public boolean shouldGenerateJsInteropExports() { public boolean shouldGenerateJsInteropExports() {
return generateJsInteropExports; return generateJsInteropExports;
Expand Down
Expand Up @@ -171,7 +171,6 @@
import com.google.gwt.dev.util.Name.SourceName; import com.google.gwt.dev.util.Name.SourceName;
import com.google.gwt.dev.util.Pair; import com.google.gwt.dev.util.Pair;
import com.google.gwt.dev.util.Util; import com.google.gwt.dev.util.Util;
import com.google.gwt.dev.util.arg.OptionJsInteropMode.Mode;
import com.google.gwt.dev.util.arg.OptionOptimize; import com.google.gwt.dev.util.arg.OptionOptimize;
import com.google.gwt.dev.util.log.speedtracer.CompilerEventType; import com.google.gwt.dev.util.log.speedtracer.CompilerEventType;
import com.google.gwt.dev.util.log.speedtracer.SpeedTracerLogger; import com.google.gwt.dev.util.log.speedtracer.SpeedTracerLogger;
Expand Down Expand Up @@ -1163,8 +1162,7 @@ private UnifiedAst precompile(PrecompilationContext precompilationContext)
*/ */


// (1) Initialize local state // (1) Initialize local state
boolean legacyJsInterop = compilerContext.getOptions().getJsInteropMode() == Mode.JS; jprogram = new JProgram(compilerContext.getMinimalRebuildCache());
jprogram = new JProgram(compilerContext.getMinimalRebuildCache(), legacyJsInterop);
// Synchronize JTypeOracle with compile optimization behavior. // Synchronize JTypeOracle with compile optimization behavior.
jprogram.typeOracle.setOptimize( jprogram.typeOracle.setOptimize(
options.getOptimizationLevel() > OptionOptimize.OPTIMIZE_LEVEL_DRAFT); options.getOptimizationLevel() > OptionOptimize.OPTIMIZE_LEVEL_DRAFT);
Expand Down

0 comments on commit dd141d6

Please sign in to comment.