|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.luaj.vm2.Varargs
org.luaj.vm2.LuaValue
org.luaj.vm2.LuaNumber
public abstract class LuaNumber
Base class for representing numbers as lua values directly.
The main subclasses are LuaInteger which holds values that fit in a java int,
and LuaDouble which holds all other number values.
LuaInteger,
LuaDouble,
LuaValue| Field Summary | |
|---|---|
static LuaValue |
s_metatable
Shared static metatable for all number values represented in lua. |
| Fields inherited from class org.luaj.vm2.LuaValue |
|---|
ADD, CALL, CONCAT, DIV, EMPTYSTRING, EQ, FALSE, INDEX, LE, LEN, LT, METATABLE, MINUSONE, MOD, MODE, MUL, NEWINDEX, NIL, NILS, NONE, NOVALS, ONE, POW, SUB, TBOOLEAN, TFUNCTION, TINT, TLIGHTUSERDATA, TNIL, TNONE, TNUMBER, TOSTRING, TRUE, TSTRING, TTABLE, TTHREAD, TUSERDATA, TVALUE, TYPE_NAMES, UNM, ZERO |
| Constructor Summary | |
|---|---|
LuaNumber()
|
|
| Method Summary | |
|---|---|
LuaNumber |
checknumber()
Check that the value is numeric, and return as a LuaNumber if so, or throw LuaError |
LuaNumber |
checknumber(java.lang.String errmsg)
Check that the value is numeric, and return as a LuaNumber if so, or throw LuaError |
Buffer |
concat(Buffer rhs)
Concatenate a Buffer onto this value and return the result
using rules of lua string concatenation including metatag processing. |
LuaValue |
concat(LuaValue rhs)
Concatenate another value onto this value and return the result using rules of lua string concatenation including metatag processing. |
LuaValue |
concatTo(LuaNumber lhs)
Reverse-concatenation: concatenate this value onto another value known to be a LuaNumber
and return the result using rules of lua string concatenation including
metatag processing. |
LuaValue |
concatTo(LuaString lhs)
Reverse-concatenation: concatenate this value onto another value known to be a LuaString
and return the result using rules of lua string concatenation including
metatag processing. |
LuaValue |
getmetatable()
Get the metatable for this LuaValue |
boolean |
isnumber()
Check if this is a number |
boolean |
isstring()
Check if this is a string |
LuaNumber |
optnumber(LuaNumber defval)
Check that optional argument is a number or string convertible to number and return as LuaNumber |
LuaValue |
tonumber()
Conditionally convert to lua number without throwing errors. |
int |
type()
Get the enumeration value for the type of this value. |
java.lang.String |
typename()
Get the String name of the type of this value. |
| Methods inherited from class org.luaj.vm2.Varargs |
|---|
argcheck, checkboolean, checkclosure, checkdouble, checkfunction, checkint, checkinteger, checkjstring, checklong, checknotnil, checknumber, checkstring, checktable, checkthread, checkuserdata, checkuserdata, checkvalue, eval, isfunction, isnil, isnoneornil, isnumber, isstring, istable, isTailcall, isthread, isuserdata, isvalue, optboolean, optclosure, optdouble, optfunction, optint, optinteger, optjstring, optlong, optnumber, optstring, opttable, optthread, optuserdata, optuserdata, optvalue, subargs, toboolean, tobyte, tochar, todouble, tofloat, toint, tojstring, tolong, toshort, touserdata, touserdata, type |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static LuaValue s_metatable
| Constructor Detail |
|---|
public LuaNumber()
| Method Detail |
|---|
public int type()
LuaValue
type in class LuaValueTNIL,
TBOOLEAN,
TNUMBER,
TSTRING,
TTABLE,
TFUNCTION,
TUSERDATA,
TTHREADLuaValue.typename()public java.lang.String typename()
LuaValue
typename in class LuaValueLuaValue.TYPE_NAMES
corresponding to the type of this value:
"nil", "boolean", "number", "string",
"table", "function", "userdata", "thread"LuaValue.type()public LuaNumber checknumber()
LuaValueLuaError
Values that are LuaString that can be converted to a number will be converted and returned.
checknumber in class LuaValueLuaNumber if numericLuaValue.checkint(),
LuaValue.checkinteger(),
LuaValue.checkdouble(),
LuaValue.checklong(),
LuaValue.optnumber(LuaNumber),
LuaValue.TNUMBERpublic LuaNumber checknumber(java.lang.String errmsg)
LuaValueLuaError
Values that are LuaString that can be converted to a number will be converted and returned.
checknumber in class LuaValueerrmsg - String message to supply if conversion fails
LuaNumber if numericLuaValue.checkint(),
LuaValue.checkinteger(),
LuaValue.checkdouble(),
LuaValue.checklong(),
LuaValue.optnumber(LuaNumber),
LuaValue.TNUMBERpublic LuaNumber optnumber(LuaNumber defval)
LuaValueLuaNumber
optnumber in class LuaValuedefval - LuaNumber to return if this is nil or none
this cast to LuaNumber if numeric,
defval if nil or none,
throws LuaError otherwiseLuaValue.optdouble(double),
LuaValue.optlong(long),
LuaValue.optint(int),
LuaValue.checkint(),
LuaValue.toint(),
LuaValue.tonumber(),
LuaValue.isnumber(),
LuaValue.TNUMBERpublic LuaValue tonumber()
LuaValue
In lua all numbers are strings, but not all strings are numbers.
This function will return
the LuaValue this if it is a number
or a string convertible to a number,
and NIL for all other cases.
This allows values to be tested for their "numeric-ness" without the penalty of throwing exceptions, nor the cost of converting the type and creating storage for it.
tonumber in class LuaValuethis if it is a LuaNumber
or LuaString that can be converted to a number,
otherwise LuaValue.NILLuaValue.tostring(),
LuaValue.optnumber(LuaNumber),
LuaValue.checknumber(),
LuaValue.toint(),
LuaValue.todouble()public boolean isnumber()
LuaValuethis is a number
isnumber in class LuaValuenumber,
meaning derives from LuaNumber
or derives from LuaString and is convertible to a number,
otherwise falseLuaValue.tonumber(),
LuaValue.checknumber(),
LuaValue.optnumber(LuaNumber),
LuaValue.TNUMBERpublic boolean isstring()
LuaValuethis is a string
isstring in class LuaValuestring,
meaning derives from LuaString or LuaNumber,
otherwise falseLuaValue.tostring(),
LuaValue.checkstring(),
LuaValue.optstring(LuaString),
LuaValue.TSTRINGpublic LuaValue getmetatable()
LuaValueLuaValue
For LuaTable and LuaUserdata instances,
the metatable returned is this instance metatable.
For all other types, the class metatable value will be returned.
getmetatable in class LuaValueLuaBoolean.s_metatable,
s_metatable,
LuaNil.s_metatable,
LuaFunction.s_metatable,
LuaThread.s_metatablepublic LuaValue concat(LuaValue rhs)
LuaValue
Only strings and numbers as represented can be concatenated, meaning
each operand must derive from LuaString or LuaNumber.
concat in class LuaValuerhs - The right-hand-side value to perform the operation withpublic Buffer concat(Buffer rhs)
LuaValueBuffer onto this value and return the result
using rules of lua string concatenation including metatag processing.
Only strings and numbers as represented can be concatenated, meaning
each operand must derive from LuaString or LuaNumber.
concat in class LuaValuerhs - The right-hand-side Buffer to perform the operation with
(this .. rhs)public LuaValue concatTo(LuaNumber lhs)
LuaValueLuaNumber
and return the result using rules of lua string concatenation including
metatag processing.
Only strings and numbers as represented can be concatenated, meaning
each operand must derive from LuaString or LuaNumber.
concatTo in class LuaValuelhs - The left-hand-side value onto which this will be concatenatedLuaValue.concat(LuaValue)public LuaValue concatTo(LuaString lhs)
LuaValueLuaString
and return the result using rules of lua string concatenation including
metatag processing.
Only strings and numbers as represented can be concatenated, meaning
each operand must derive from LuaString or LuaNumber.
concatTo in class LuaValuelhs - The left-hand-side value onto which this will be concatenatedLuaValue.concat(LuaValue)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||