public abstract class VarArgFunction extends LibFunction
Subclasses need only implement LuaValue.invoke(Varargs) to complete this class,
simplifying development.
All other uses of call(LuaValue), LuaValue.invoke(),etc,
are routed through this method by this class,
converting arguments to Varargs and
dropping or extending return values with nil values as required.
If between one and three arguments are required, and only one return value is returned,
ZeroArgFunction, OneArgFunction, TwoArgFunction, or ThreeArgFunction.
See LibFunction for more information on implementation libraries and library functions.
name, opcodes_metatableADD, BAND, BNOT, BOR, BXOR, CALL, CONCAT, DIV, EMPTYSTRING, ENV, EQ, FALSE, IDIV, INDEX, LE, LEN, LT, METATABLE, MINUSONE, MOD, MODE, MUL, NEWINDEX, NIL, NILS, NONE, NOVALS, ONE, POW, SHL, SHR, SUB, TBOOLEAN, TFUNCTION, TINT, TLIGHTUSERDATA, TNIL, TNONE, TNUMBER, TOSTRING, TRUE, TSTRING, TTABLE, TTHREAD, TUSERDATA, TVALUE, TYPE_NAMES, UNM, uservalue, ZERO| 构造器和说明 |
|---|
VarArgFunction() |
| 限定符和类型 | 方法和说明 |
|---|---|
LuaValue |
call()
Call
this with 0 arguments, including metatag processing,
and return only the first return value. |
LuaValue |
call(LuaValue arg)
Call
this with 1 argument, including metatag processing,
and return only the first return value. |
LuaValue |
call(LuaValue arg1,
LuaValue arg2)
Call
this with 2 arguments, including metatag processing,
and return only the first return value. |
LuaValue |
call(LuaValue arg1,
LuaValue arg2,
LuaValue arg3)
Call
this with 3 arguments, including metatag processing,
and return only the first return value. |
Varargs |
invoke(Varargs args)
Subclass responsibility.
|
Varargs |
onInvoke(Varargs args)
Callback used during tail call processing to invoke the function once.
|
checkfunction, classnamestub, getfenv, getmetatable, isfunction, name, optfunction, setfenv, strvalue, type, typenameadd, add, add, and, arg, arg1, argerror, argerror, aritherror, aritherror, arithmt, arithmtwith, assert_, band, band, bnot, bor, bor, buffer, bxor, bxor, call, callmt, checkboolean, checkclosure, checkdouble, checkglobals, checkint, checkinteger, checkjstring, checklong, checkmetatag, checknotnil, checknumber, checknumber, checkstring, checktable, checkthread, checkuserdata, checkuserdata, compareerror, compareerror, comparemt, concat, concat, concatmt, concatTo, concatTo, concatTo, div, div, div, divInto, eq_b, eq, eqmtcall, equals, error, get, get, get, gettable, getuservalue, gt_b, gt_b, gt_b, gt, gt, gt, gteq_b, gteq_b, gteq_b, gteq, gteq, gteq, idiv, idiv, illegal, 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, jcall, jget, jset, len, lenerror, length, listOf, listOf, load, lt_b, lt_b, lt_b, lt, lt, lt, lteq_b, lteq_b, lteq_b, lteq, lteq, lteq, metatableOf, metatag, method, method, method, method, method, method, mod, mod, mod, modFrom, mul, mul, mul, narg, neg, neq_b, neq, next, not, 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, settable, setuservalue, shl, shl, shr, shr, 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, typerror, unimplemented, userdataOf, userdataOf, valueOf, valueOf, valueOf, valueOf, valueOf, valueOf, valueOf, varargsOf, varargsOf, varargsOf, varargsOf, varargsOf, varargsOfargcheck, 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, typepublic LuaValue call()
LuaValuethis with 0 arguments, including metatag processing,
and return only the first return value.
If this is a LuaFunction, call it,
and return only its first return value, dropping any others.
Otherwise, look for the LuaValue.CALL metatag and call that.
If the return value is a Varargs, only the 1st value will be returned.
To get multiple values, use LuaValue.invoke() instead.
To call this as a method call, use LuaValue.method(LuaValue) instead.
call 在类中 LibFunction(this()), or LuaValue.NIL if there were none.LuaValue.call(LuaValue),
LuaValue.call(LuaValue,LuaValue),
LuaValue.call(LuaValue, LuaValue, LuaValue),
LuaValue.invoke(),
LuaValue.method(String),
LuaValue.method(LuaValue)public LuaValue call(LuaValue arg)
LuaValuethis with 1 argument, including metatag processing,
and return only the first return value.
If this is a LuaFunction, call it,
and return only its first return value, dropping any others.
Otherwise, look for the LuaValue.CALL metatag and call that.
If the return value is a Varargs, only the 1st value will be returned.
To get multiple values, use LuaValue.invoke() instead.
To call this as a method call, use LuaValue.method(LuaValue) instead.
call 在类中 LibFunctionarg - First argument to supply to the called function(this(arg)), or LuaValue.NIL if there were none.LuaValue.call(),
LuaValue.call(LuaValue,LuaValue),
LuaValue.call(LuaValue, LuaValue, LuaValue),
LuaValue.invoke(Varargs),
LuaValue.method(String,LuaValue),
LuaValue.method(LuaValue,LuaValue)public LuaValue call(LuaValue arg1, LuaValue arg2)
LuaValuethis with 2 arguments, including metatag processing,
and return only the first return value.
If this is a LuaFunction, call it,
and return only its first return value, dropping any others.
Otherwise, look for the LuaValue.CALL metatag and call that.
If the return value is a Varargs, only the 1st value will be returned.
To get multiple values, use LuaValue.invoke() instead.
To call this as a method call, use LuaValue.method(LuaValue) instead.
call 在类中 LibFunctionarg1 - First argument to supply to the called functionarg2 - Second argument to supply to the called function(this(arg1,arg2)), or LuaValue.NIL if there were none.LuaValue.call(),
LuaValue.call(LuaValue),
LuaValue.call(LuaValue, LuaValue, LuaValue),
LuaValue.invoke(LuaValue, Varargs),
LuaValue.method(String,LuaValue,LuaValue),
LuaValue.method(LuaValue,LuaValue,LuaValue)public LuaValue call(LuaValue arg1, LuaValue arg2, LuaValue arg3)
LuaValuethis with 3 arguments, including metatag processing,
and return only the first return value.
If this is a LuaFunction, call it,
and return only its first return value, dropping any others.
Otherwise, look for the LuaValue.CALL metatag and call that.
If the return value is a Varargs, only the 1st value will be returned.
To get multiple values, use LuaValue.invoke() instead.
To call this as a method call, use LuaValue.method(LuaValue) instead.
call 在类中 LibFunctionarg1 - First argument to supply to the called functionarg2 - Second argument to supply to the called functionarg3 - Second argument to supply to the called function(this(arg1,arg2,arg3)), or LuaValue.NIL if there were none.LuaValue.call(),
LuaValue.call(LuaValue),
LuaValue.call(LuaValue, LuaValue),
LuaValue.invoke(LuaValue, LuaValue, Varargs),
LuaValue.invokemethod(String,Varargs),
LuaValue.invokemethod(LuaValue,Varargs)public Varargs invoke(Varargs args)
invoke 在类中 LibFunctionargs - the arguments to the function call.Varargs instance.LuaValue.varargsOf(LuaValue[]),
LuaValue.call(LuaValue),
LuaValue.invoke(),
LuaValue.invoke(LuaValue,Varargs),
LuaValue.invokemethod(String,Varargs),
LuaValue.invokemethod(LuaValue,Varargs)public Varargs onInvoke(Varargs args)
LuaValue
This may return a TailcallVarargs to be evaluated by the client.
This should not be called directly, instead use one of the call invocation functions.
onInvoke 在类中 LuaValueargs - the arguments to the call invocation.LuaValue.call(),
LuaValue.invoke(),
LuaValue.method(LuaValue),
LuaValue.invokemethod(LuaValue)Copyright © 2020. All rights reserved.