Work around a JVM bug involving static initialization.
https://www.blackberry.com/jira/browse/JAVAAPI-1289
This commit is contained in:
@@ -21,8 +21,11 @@
|
|||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
package org.luaj.vm2;
|
package org.luaj.vm2;
|
||||||
|
|
||||||
public class LuaBoolean extends LuaValue {
|
public final class LuaBoolean extends LuaValue {
|
||||||
|
|
||||||
|
static final LuaBoolean _TRUE = new LuaBoolean(true);
|
||||||
|
static final LuaBoolean _FALSE = new LuaBoolean(false);
|
||||||
|
|
||||||
public static LuaValue s_metatable;
|
public static LuaValue s_metatable;
|
||||||
|
|
||||||
public final boolean v;
|
public final boolean v;
|
||||||
|
|||||||
@@ -23,6 +23,8 @@ package org.luaj.vm2;
|
|||||||
|
|
||||||
public class LuaNil extends LuaValue {
|
public class LuaNil extends LuaValue {
|
||||||
|
|
||||||
|
static final LuaNil _NIL = new LuaNil();
|
||||||
|
|
||||||
public static LuaValue s_metatable;
|
public static LuaValue s_metatable;
|
||||||
|
|
||||||
LuaNil() {}
|
LuaNil() {}
|
||||||
|
|||||||
@@ -52,10 +52,10 @@ public class LuaValue extends Varargs {
|
|||||||
"value",
|
"value",
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final LuaValue NIL = new LuaNil();
|
public static final LuaValue NIL = LuaNil._NIL;
|
||||||
public static final LuaBoolean TRUE = new LuaBoolean(true);
|
public static final LuaBoolean TRUE = LuaBoolean._TRUE;
|
||||||
public static final LuaBoolean FALSE = new LuaBoolean(false);
|
public static final LuaBoolean FALSE = LuaBoolean._FALSE;
|
||||||
public static final LuaValue NONE = new None();
|
public static final LuaValue NONE = None._NONE;
|
||||||
public static final LuaNumber ZERO = LuaInteger.valueOf(0);
|
public static final LuaNumber ZERO = LuaInteger.valueOf(0);
|
||||||
public static final LuaNumber ONE = LuaInteger.valueOf(1);
|
public static final LuaNumber ONE = LuaInteger.valueOf(1);
|
||||||
public static final LuaNumber MINUSONE = LuaInteger.valueOf(-1);
|
public static final LuaNumber MINUSONE = LuaInteger.valueOf(-1);
|
||||||
@@ -521,6 +521,7 @@ public class LuaValue extends Varargs {
|
|||||||
|
|
||||||
// empty varargs
|
// empty varargs
|
||||||
private static final class None extends LuaNil {
|
private static final class None extends LuaNil {
|
||||||
|
static None _NONE = new None();
|
||||||
public LuaValue arg(int i) { return NIL; }
|
public LuaValue arg(int i) { return NIL; }
|
||||||
public int narg() { return 0; }
|
public int narg() { return 0; }
|
||||||
public LuaValue arg1() { return NIL; }
|
public LuaValue arg1() { return NIL; }
|
||||||
|
|||||||
@@ -461,11 +461,11 @@ public class FuncState extends LuaC {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int boolK(boolean b) {
|
int boolK(boolean b) {
|
||||||
return this.addk((b ? LuaValue.TRUE : LuaBoolean.FALSE));
|
return this.addk((b ? LuaValue.TRUE : LuaValue.FALSE));
|
||||||
}
|
}
|
||||||
|
|
||||||
int nilK() {
|
int nilK() {
|
||||||
return this.addk(LuaNil.NIL);
|
return this.addk(LuaValue.NIL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setreturns(expdesc e, int nresults) {
|
void setreturns(expdesc e, int nresults) {
|
||||||
|
|||||||
Reference in New Issue
Block a user