# HG changeset patch # User Jaroslav Tulach # Date 1399980854 -7200 # Node ID 380564345434debd36bdf7e5ec48318c432a7ce2 # Parent 31bd01cfe50df9cc2734c4a474c8a8ad5a210ac8 Use string names for annotation properties and exported methods to define enums diff -r 31bd01cfe50d -r 380564345434 rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Tue May 13 11:29:16 2014 +0200 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Tue May 13 13:34:14 2014 +0200 @@ -1981,7 +1981,7 @@ } cnt[++depth] = 0; if (attrName != null) { - append(attrName).append(" : "); + append('"').append(attrName).append("\" : "); } if (type == '[') { append("["); @@ -2011,8 +2011,13 @@ final String slashType = attrType.substring(1, attrType.length() - 1); requireReference(slashType); - append(accessClass(mangleClassName(slashType))) - .append("(false).constructor.fld_").append(value); + final String cn = mangleClassName(slashType); + append(accessClass(cn)) + .append("(false)['valueOf__L"). + append(cn). + append("_2Ljava_lang_String_2']('"). + append(value). + append("')"); } }; ap.parse(data, cd);