@@ -1565,11 +1565,10 @@ public Field[] getFields() throws SecurityException {
15651565 if (fields != null )
15661566 return fields ;
15671567 fields = new Field [0 ];
1568- int _static = Modifier .STATIC ;
1569- Object cl = /** @j2sNative this.$clazz$ || */ null ;
1568+ Object cl = /** @j2sNative this.$clazz$ || */ null ;
15701569 Object proto = /** @j2sNative cl.prototype || */ null ;
15711570 addFields (proto , this .fields , 0 );
1572- addFields (cl , this .fields , _static );
1571+ addFields (cl , this .fields , Modifier . STATIC );
15731572 return fields ;
15741573 }
15751574
@@ -1741,12 +1740,12 @@ private void addFields(Object c, Field[] f, int modifiers) {
17411740 * @j2sNative
17421741 *
17431742 * for (m in c) {
1744- * if (!modifiers && this.$clazz$[m])
1743+ * if (!! modifiers != !! this.$clazz$[m])
17451744 * continue;
17461745 * if (this.excludeField$S(m)) continue;
17471746 * var o = c[m];
17481747 * switch (typeof o) {
1749- * case "object": if (o && o.__CLASS_NAME__) continue;
1748+ * case "object": if (o && ! o.__CLASS_NAME__) continue;
17501749 * case "number": case "boolean": case "string":
17511750 */
17521751
@@ -1762,7 +1761,13 @@ private void addFields(Object c, Field[] f, int modifiers) {
17621761 }
17631762
17641763 boolean excludeField (String name ) {
1765- return (name == "prototype" || name .startsWith ("__" ));
1764+ return (name == "prototype"
1765+ || name .startsWith ("__" )
1766+ || name == "$isInterface"
1767+ || name == "$isEnum"
1768+ || name == "implementz"
1769+ || name == "$init$"
1770+ || name == "$init0$" );
17661771 }
17671772
17681773 private void addField (Field [] fields , String m , int modifiers ) {
0 commit comments