1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ExportedSymbols.java Fri Apr 26 18:48:34 2013 +0200
1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ExportedSymbols.java Sat Apr 26 21:30:06 2014 +0200
1.3 @@ -30,15 +30,20 @@
1.4 @ExtraJavaScript(processByteCode = false, resource="")
1.5 final class ExportedSymbols {
1.6 private final Bck2Brwsr.Resources resources;
1.7 + private final StringArray exported;
1.8 private final Map<Object, Boolean> isMarkedAsExportedCache;
1.9
1.10 - ExportedSymbols(final Bck2Brwsr.Resources resources) {
1.11 + ExportedSymbols(final Bck2Brwsr.Resources resources, StringArray explicitlyExported) {
1.12 this.resources = resources;
1.13 + this.exported = explicitlyExported;
1.14
1.15 isMarkedAsExportedCache = new HashMap<Object, Boolean>();
1.16 }
1.17
1.18 boolean isExported(ClassData classData) throws IOException {
1.19 + if (exported.contains(classData.getClassName())) {
1.20 + return true;
1.21 + }
1.22 return classData.isPublic() && isMarkedAsExportedPackage(
1.23 classData.getPkgName())
1.24 || isMarkedAsExported(classData);