Class OneArgFunction
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable
- Direct Known Subclasses:
JseMathLib.acos,JseMathLib.asin,JseMathLib.cosh,JseMathLib.exp,JseMathLib.sinh,JseMathLib.tanh,MathLib.abs,MathLib.ceil,MathLib.cos,MathLib.deg,MathLib.exp,MathLib.floor,MathLib.rad,MathLib.randomseed,MathLib.sin,MathLib.sqrt,MathLib.tan,PackageLib.require,ScriptManager.luaGetFields,ScriptManager.luaGetMethods,StringLib.len,StringLib.lower,StringLib.reverse,StringLib.upper
Subclasses need only implement LuaValue.call(LuaValue) to complete this class,
simplifying development.
All other uses of call(), invoke(Varargs),etc,
are routed through this method by this class,
dropping or extending arguments with nil values as required.
If more than one argument are required, or no arguments are required,
or variable argument or variable return values,
then use one of the related function
ZeroArgFunction, TwoArgFunction, ThreeArgFunction, or VarArgFunction.
See LibFunction for more information on implementation libraries and library functions.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.prineside.luaj.LuaValue
LuaValue.NillableSerializer, LuaValue.None -
Field Summary
Fields inherited from class com.prineside.luaj.LuaFunction
s_metatableFields inherited from class com.prineside.luaj.LuaValue
ADD, CALL, CONCAT, DIV, EMPTYSTRING, ENV, EQ, FALSE, INDEX, LE, LEN, LT, METATABLE, MINUSONE, MOD, MODE, MUL, NEWINDEX, NIL, NILLABLE_SERIALIZER, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal LuaValuecall()Callthiswith 0 arguments, including metatag processing, and return only the first return value.abstract LuaValueCallthiswith 1 argument, including metatag processing, and return only the first return value.final LuaValueCallthiswith 2 arguments, including metatag processing, and return only the first return value.Callthiswith 3 arguments, including metatag processing, and return only the first return value.Callthiswith variable arguments, including metatag processing, and retain all return values in aVarargs.Methods inherited from class com.prineside.luaj.lib.LibFunction
call, read, tojstring, writeMethods inherited from class com.prineside.luaj.LuaFunction
checkfunction, classnamestub, getmetatable, isfunction, name, optfunction, strvalue, type, typenameMethods inherited from class com.prineside.luaj.LuaValue
add, add, add, and, arg, arg1, argerror, assert_, buffer, cachedDouble, cachedInt, cachedVarargsOf, cachedVarargsOf, cachedVarargsOf, cachedVarargsOf, cachedVarargsOf, cachedVarargsOf, call, checkboolean, checkclosure, checkdouble, checkglobals, checkint, checkinteger, checkjstring, checklong, checknotnil, checknumber, checknumber, checkstring, checktable, checkthread, checkuserdata, checkuserdata, comparemt, concat, concat, concatmt, concatTo, concatTo, concatTo, div, div, div, divInto, eq, eq_b, eqmtcall, equals, error, get, get, get, gt, gt, gt, gt_b, gt_b, gt_b, gteq, gteq, gteq, gteq_b, gteq_b, gteq_b, inext, initupvalue1, invoke, invoke, invoke, invoke, invoke, invokemethod, invokemethod, invokemethod, invokemethod, invokemethod, invokemethod, isboolean, isclosure, isint, isinttype, islong, isnil, isnumber, isstring, istable, isthread, isuserdata, isuserdata, isvalidkey, len, length, listOf, listOf, load, lt, lt, lt, lt_b, lt_b, lt_b, lteq, lteq, lteq, lteq_b, lteq_b, lteq_b, metatag, method, method, method, method, method, method, mod, mod, mod, modFrom, mul, mul, mul, narg, neg, neq, neq_b, next, not, onInvoke, optboolean, optclosure, optdouble, optint, optinteger, optjstring, optlong, optnumber, optstring, opttable, optthread, optuserdata, optuserdata, optvalue, or, pow, pow, pow, powWith, powWith, presize, raweq, raweq, raweq, raweq, raweq, rawget, rawget, rawget, rawlen, rawset, rawset, rawset, rawset, rawset, rawset, rawset, rawsetlist, set, set, set, set, set, set, set, setmetatable, strcmp, strcmp, strongvalue, sub, sub, sub, subargs, subFrom, subFrom, tableOf, tableOf, tableOf, tableOf, tableOf, tableOf, tailcallOf, testfor_b, toboolean, tobyte, tochar, todouble, tofloat, toint, tolong, tonumber, toshort, tostring, toString, touserdata, touserdata, userdataOf, userdataOf, valueOf, valueOf, valueOf, valueOf, valueOf, valueOf, varargsOf, varargsOf, varargsOf, varargsOf, varargsOf, varargsOfMethods inherited from class com.prineside.luaj.Varargs
argcheck, checkboolean, checkclosure, checkdouble, checkfunction, checkint, checkinteger, checkjstring, checklong, checknotnil, checknumber, checkstring, checktable, checkthread, checkuserdata, checkuserdata, checkvalue, dealias, 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, toboolean, tobyte, tochar, todouble, tofloat, toint, tojstring, tolong, toshort, touserdata, touserdata, type
-
Constructor Details
-
OneArgFunction
public OneArgFunction()Default constructor
-
-
Method Details
-
call
Description copied from class:LuaValueCallthiswith 1 argument, including metatag processing, and return only the first return value.If
thisis aLuaFunction, call it, and return only its first return value, dropping any others. Otherwise, look for theLuaValue.CALLmetatag and call that.If the return value is a
Varargs, only the 1st value will be returned. To get multiple values, useLuaValue.invoke()instead.To call
thisas a method call, useLuaValue.method(LuaValue)instead.- Overrides:
callin classLibFunction- Parameters:
arg- First argument to supply to the called function- Returns:
- First return value
(this(arg)), orLuaValue.NILif there were none. - See Also:
-
call
Description copied from class:LuaValueCallthiswith 0 arguments, including metatag processing, and return only the first return value.If
thisis aLuaFunction, call it, and return only its first return value, dropping any others. Otherwise, look for theLuaValue.CALLmetatag and call that.If the return value is a
Varargs, only the 1st value will be returned. To get multiple values, useLuaValue.invoke()instead.To call
thisas a method call, useLuaValue.method(LuaValue)instead.- Overrides:
callin classLibFunction- Returns:
- First return value
(this()), orLuaValue.NILif there were none. - See Also:
-
call
Description copied from class:LuaValueCallthiswith 2 arguments, including metatag processing, and return only the first return value.If
thisis aLuaFunction, call it, and return only its first return value, dropping any others. Otherwise, look for theLuaValue.CALLmetatag and call that.If the return value is a
Varargs, only the 1st value will be returned. To get multiple values, useLuaValue.invoke()instead.To call
thisas a method call, useLuaValue.method(LuaValue)instead.- Overrides:
callin classLibFunction- Parameters:
arg1- First argument to supply to the called functionarg2- Second argument to supply to the called function- Returns:
- First return value
(this(arg1,arg2)), orLuaValue.NILif there were none. - See Also:
-
call
Description copied from class:LuaValueCallthiswith 3 arguments, including metatag processing, and return only the first return value.If
thisis aLuaFunction, call it, and return only its first return value, dropping any others. Otherwise, look for theLuaValue.CALLmetatag and call that.If the return value is a
Varargs, only the 1st value will be returned. To get multiple values, useLuaValue.invoke()instead.To call
thisas a method call, useLuaValue.method(LuaValue)instead.- Overrides:
callin classLibFunction- Parameters:
arg1- First argument to supply to the called functionarg2- Second argument to supply to the called functionarg3- Second argument to supply to the called function- Returns:
- First return value
(this(arg1,arg2,arg3)), orLuaValue.NILif there were none. - See Also:
-
invoke
Description copied from class:LuaValueCallthiswith variable arguments, including metatag processing, and retain all return values in aVarargs.If
thisis aLuaFunction, call it, and return all values. Otherwise, look for theLuaValue.CALLmetatag and call that.To get a particular return value, us
Varargs.arg(int)To call
thisas a method call, useLuaValue.invokemethod(LuaValue)instead.- Overrides:
invokein classLibFunction- Parameters:
varargs- Varargs containing the arguments to supply to the called function- Returns:
- All return values as a
Varargsinstance. - See Also:
-