VarType (int val, boolean boolPermitted) { if (boolPermitted) { VarType constType = VarType.VARTYPE_BOOLEAN; if (val != 0 && val != 1) { constType = constType.copy(true); } return constType; } else if (0 <= val && val <= 127) { return VarType.VARTYPE_BYTECHAR; } else if (-128 <= val && val <= 127) { return VarType.VARTYPE_BYTE; } else if (0 <= val && val <= 32767) { return VarType.VARTYPE_SHORTCHAR; } else if (-32768 <= val && val <= 32767) { return VarType.VARTYPE_SHORT; } else if (0 <= val && val <= 0xFFFF) { return VarType.VARTYPE_CHAR; } else { return VarType.VARTYPE_INT; } }