public class LuaState extends Object
此类对所有参数及其状态执行广泛检查。具体来说,在以下指定的条件下会抛出下列异常
异常 | 何时 |
---|---|
NullPointerException |
如果某个参数为 null ,且 API 并未明确指定该参数可以为 null |
IllegalStateException |
如果 Lua 状态已关闭,且 API 并未明确指定可以在关闭的 Lua 状态上调用该方法 |
IllegalArgumentException |
如果栈索引引用未定义的栈位置,且 API 并未明确指定该栈索引可以未定义 |
IllegalArgumentException |
如果栈索引引用值为不同于 API 中明确指定的值类型的栈位置 |
IllegalArgumentException |
如果计数为负或超出范围,且 API 并未明确指定该计数可以为负或超出范围 |
LuaRuntimeException |
如果发生 Lua 运行时错误 |
LuaSyntaxException |
如果 Lua 块的语法不正确 |
LuaMemoryAllocationException |
如果 Lua 内存分配器用尽内存或如果 JNI 分配失败 |
修饰符和类型 | 类和说明 |
---|---|
static class |
LuaState.GcAction
表示一个 Lua 垃圾回收器操作。
|
static class |
LuaState.Library
表示一个 Lua 库。
|
修饰符和类型 | 字段和说明 |
---|---|
static int |
ENVIRONINDEX
环境伪索引。
|
static int |
GLOBALSINDEX
全局伪索引。
|
static String |
LUA_VERSION
Lua 版本。
|
static int |
MULTRET
多个返回伪返回值计数。
|
static int |
REGISTRYINDEX
注册表伪索引。
|
static String |
VERSION
JNLua 版本。
|
static int |
YIELD
指示线程已挂起的状态。
|
修饰符和类型 | 方法和说明 |
---|---|
void |
call(int argCount, int returnCount)
调用 Lua 函数。
|
void |
checkArg(int index, boolean condition, String msg)
检查某个条件对于指定函数参数是否为 true。
|
boolean |
checkBoolean(int index)
检查指定函数参数的值是否为布尔值。
|
boolean |
checkBoolean(int index, boolean d)
检查指定函数参数的值是否为布尔值。
|
byte[] |
checkByteArray(int index)
检查指定函数的参数值是不是字符串或数字。
|
byte[] |
checkByteArray(int index, byte[] d)
检查指定函数的参数值是不是字符串或数字。
|
int |
checkInteger(int index)
检查指定函数的参数值是不是数字或可以转换成数字的字符串。
|
int |
checkInteger(int index, int d)
检查指定函数的参数值是不是数字或可以转换成数字的字符串。
|
<T> T |
checkJavaObject(int index, Class<T> clazz)
检查指定函数的参数值是不是可以转换成指定类型的 Java 对象。
|
<T> T |
checkJavaObject(int index, Class<T> clazz, T d)
检查指定函数的参数值是不是可以转换成指定类型的 Java 对象。
|
double |
checkNumber(int index)
检查指定函数的参数值是不是数字或可以转换成数字的字符串。
|
double |
checkNumber(int index, double d)
检查指定函数的参数值是不是数字或可以转换成数字的字符串。
|
String |
checkOption(int index, String[] options)
检查指定函数的参数值是不是字符串或数字,同时匹配指定的选项。
|
String |
checkOption(int index, String[] options, String d)
检查指定函数的参数值是不是字符串或数字,同时匹配指定的选项。
|
String |
checkString(int index)
检查指定函数的参数值是不是字符串或数字。
|
String |
checkString(int index, String d)
检查指定函数的参数值是不是字符串或数字。
|
void |
checkType(int index, LuaType type)
检查指定函数的参数值是不是指定类型。
|
void |
close()
关闭当前的 Lua 状态并释放所有资源。
|
void |
concat(int n)
连接堆栈顶部指定的多个值,并用连接后的值替换它们。
|
void |
dump(OutputStream outputStream)
将堆栈顶部的函数作为已编译二进制片段转储到输出流中。
|
boolean |
equal(int index1, int index2)
返回位于两个指定堆栈索引处的值是否按照 Lua 语义相等。
|
int |
gc(LuaState.GcAction what, int data)
执行垃圾回收操作。
|
ClassLoader |
getClassLoader()
返回该 Lua 状态的类加载器。
|
转换器 |
getConverter()
返回该 Lua 状态的转换器。
|
void |
getFEnv(int index)
在栈上推送指定索引处的值的环境表。
|
void |
getField(int index, String key)
在栈上推送指定索引处的表中由指定字符串键索引的值。
|
void |
getGlobal(String name)
在栈上推送全局变量的值。
|
Java 反射器 |
getJavaReflector()
返回该 Lua 状态的 Java 反射器。
|
boolean |
getMetafield(int index, String key)
在栈上推送指定索引处的值的元表中具名字段的值,并返回
true 。 |
Java 函数 |
getMetamethod(Object obj, JavaReflector.Metamethod metamethod)
返回指定对象的元方法。
|
boolean |
getMetatable(int index)
在栈上推送指定索引处的值的元表。
|
Lua 值代理 |
getProxy(int index)
返回指定索引处 Lua 值的代理对象。
|
Lua 值代理 |
getProxy(int index, Class<?>[] interfaces)
返回一个在 Lua 中实现指定接口列表的代理对象。
|
<T> T |
getProxy(int index, Class<T> interfaze)
返回一个在 Lua 中实现指定接口的代理对象。
|
void |
getTable(int index)
在指定索引处的表中,在栈上推送由栈顶键索引的值。
|
int |
getTop()
返回栈上的值的数量。
|
void |
insert(int index)
弹出栈顶值,将其插入指定索引处,并将该索引之上的元素上移。
|
boolean |
isBoolean(int index)
返回指定栈索引处的该值是否是布尔值。
|
boolean |
isCFunction(int index)
返回指定栈索引处的该值是否是 C 函数。
|
boolean |
isFunction(int index)
返回指定栈索引处的该值是否是函数(C 函数、Java 函数或 Lua 函数)。
|
boolean |
isJavaFunction(int index)
返回指定栈索引处的该值是否是 Java 函数。
|
boolean |
isJavaObject(int index, Class<?> type)
返回指定堆栈索引处的值是否可转换为指定类型的 Java 对象。
|
boolean |
isJavaObjectRaw(int index)
返回指定堆栈索引处的值是否是 Java 对象。
|
boolean |
isNil(int index)
返回指定堆栈索引处的值是否是
nil 。 |
boolean |
isNone(int index)
返回指定堆栈索引处的值是否未定义。
|
boolean |
isNoneOrNil(int index)
返回指定堆栈索引处的值是否未定义或
nil 。 |
boolean |
isNumber(int index)
返回指定堆栈索引处的值是否为数字或可转换为数字的字符串。
|
boolean |
isOpen()
返回此 Lua 状态是否为打开状态。
|
boolean |
isString(int index)
返回指定堆栈索引处的值是否是字符串或数字(这类数字始终可转换成字符串)。
|
boolean |
isTable(int index)
返回指定堆栈索引处的值是否是表。
|
boolean |
isThread(int index)
返回指定堆栈索引处的值是否是线程。
|
int |
length(int index)
返回指定堆栈索引处的值的长度。
|
boolean |
lessThan(int index1, int index2)
返回第一个堆栈索引处的值是否小于第二个堆栈索引处的值(根据 Lua 语义)。
|
void |
load(InputStream inputStream, String chunkName)
从输入流加载一个 Lua 代码块并将其作为一个函数压入堆栈。
|
void |
load(String chunk, String chunkName)
从一个字符串加载一个 Lua 代码块并将其作为一个函数压入堆栈。
|
void |
newTable()
创建一个新表并将其压入堆栈。
|
void |
newTable(int arrayCount, int recordCount)
创建一个新表,并预留一定数量的数组元素和记录元素所用的空间,然后将其压入堆栈中。
|
void |
newThread()
从堆栈中弹出新 Lua 线程的起始函数,并使用该起始函数创建新线程。
|
boolean |
next(int index)
从堆栈中弹出键,并从指定索引处的表中弹出下一个键及其值并将其压入堆栈中。
|
void |
openLib(LuaState.Library library)
在此 Lua 状态中打开指定的库。
|
void |
openLibs()
在此 Lua 状态中打开 Lua 标准库和 JNLua Java 模块。
|
void |
pop(int count)
从堆栈中弹出值。
|
void |
pushBoolean(boolean b)
将布尔值推入堆栈。
|
void |
pushInteger(int n)
将整数值作为数字值推入堆栈。
|
void |
pushJavaFunction(JavaFunction javaFunction)
将 Java 函数推入堆栈。
|
void |
pushJavaObject(Object object)
将 Java 对象连同转换信息一起推入堆栈。
|
void |
pushJavaObjectRaw(Object object)
将 Java 对象推入堆栈。
|
void |
pushNil()
将 nil 值推入堆栈。
|
void |
pushNumber(double n)
将数字值推入堆栈。
|
void |
pushString(byte[] b)
将字节数组作为字符串值推入堆栈。
|
void |
pushString(byte[] b, int count)
将字节数组作为字符串值推入堆栈。
|
void |
pushString(String s)
将字符串值推入堆栈。
|
void |
pushValue(int index)
将指定索引位置的值推入堆栈顶端。
|
boolean |
rawEqual(int index1, int index2)
绕过元表逻辑,返回两个指定堆栈索引位置的值是否根据 Lua 语义相等。
|
void |
rawGet(int index)
绕过元表逻辑,将指定索引位置的表中由堆栈顶端键引用的值推入堆栈。
|
void |
rawGet(int index, int key)
绕过元表逻辑,将指定索引位置的表中由指定整型键引用的值推入堆栈。
|
void |
rawSet(int index)
绕过元表逻辑,将堆栈顶端的值置入指定索引位置的表中,使用第二高的堆栈位置上的值作为键。
|
void |
rawSet(int index, int key)
绕过元表逻辑,将堆栈顶端的值置入指定索引位置的表中,使用指定的整型键。
|
int |
ref(int index)
将堆栈顶端的值存储在指定索引位置的表中,并返回该表中该值的整型键作为引用。
|
void |
register(NamedJavaFunction namedJavaFunction)
将命名 Java 函数注册为全局变量。
|
void |
register(String moduleName, NamedJavaFunction[] namedJavaFunctions)
注册一个模块并将该模块推入堆栈。
|
void |
remove(int index)
移除指定堆栈索引位置的值,并将该索引位置上方的元素下移。
|
void |
replace(int index)
使用从堆栈顶端弹出的值替换指定索引位置的值。
|
int |
resume(int index, int argCount)
恢复指定堆栈索引位置的线程,从堆栈顶端弹出指定数量的参数并将它们传递给恢复的线程。
|
void |
setClassLoader(ClassLoader classLoader)
设置此 Lua 状态的类加载器。
|
void |
setConverter(Converter converter)
设置此 Lua 状态的转换器。
|
boolean |
setFEnv(int index)
将堆栈顶部的值设置为指定索引处的值的环境表。
|
void |
setField(int index, String key)
使用指定的字符串键将堆栈顶部的值设置到指定索引处的表中。
|
void |
setGlobal(String name)
将堆栈顶部的值设置为全局变量并从堆栈中弹出该值。
|
void |
setJavaReflector(JavaReflector javaReflector)
设置此 Lua 状态的 Java 反射器。
|
boolean |
setMetatable(int index)
将堆栈顶部的值设置为指定索引处的值的元表。
|
void |
setTable(int index)
使用第二高的堆栈位置的值作为键,将堆栈顶部的值设置到指定索引处的表中。
|
void |
setTop(int index)
将指定索引设置为堆栈的新顶部。
|
int |
status(int index)
返回指定堆栈索引处的线程状态。
|
void |
tableMove(int index, int from, int to, int count)
将用作数组的表中指定数量的顺序元素从一个索引移动到另一个索引。
|
int |
tableSize(int index)
计算表中的条目数量。
|
boolean |
toBoolean(int index)
返回指定堆栈索引处的值的布尔表示形式。
|
byte[] |
toByteArray(int index)
返回指定堆栈索引处的值的字节数组表示形式。
|
int |
toInteger(int index)
返回指定堆栈索引处的值的整数表示形式。
|
Java 函数 |
toJavaFunction(int index)
返回指定堆栈索引处的值的 Java 函数。
|
<T> T |
toJavaObject(int index, Class<T> type)
返回指定堆栈索引处的值表示的特定类型 Java 对象。
|
对象 |
toJavaObjectRaw(int index)
返回指定堆栈索引处的值的 Java 对象。
|
double |
toNumber(int index)
返回指定堆栈索引处的值的数字表示形式。
|
long |
toPointer(int index)
返回指定堆栈索引处的值的指针表示形式。
|
String |
toString(int index)
返回指定堆栈索引处的值的字符串表示形式。
|
LuaType |
type(int index)
返回指定堆栈索引处的值的类型。
|
String |
typeName(int index)
返回指定堆栈索引处的值的类型名称。
|
void |
unref(int index, int reference)
从指定索引处的表中移除先前创建的引用。
|
int |
yield(int returnCount)
让出正在运行的线程,从堆栈的顶部弹出指定数量的值并将它们作为返回值传递给已恢复正在运行线程的线程。
|
public static final int REGISTRYINDEX
public static final int ENVIRONINDEX
public static final int GLOBALSINDEX
public static final int MULTRET
public static final int YIELD
public static final String LUA_VERSION
public LuaState()
public LuaState(long luaState)
public ClassLoader getClassLoader()
该方法可能会在已关闭的 Lua 状态上调用。
public void setClassLoader(ClassLoader classLoader)
该方法可能会在已关闭的 Lua 状态上调用。
classLoader
- 要设置的类加载器public JavaReflector getJavaReflector()
该方法可能会在已关闭的 Lua 状态上调用。
public void setJavaReflector(JavaReflector javaReflector)
该方法可能会在已关闭的 Lua 状态上调用。
javaReflector
- Java 反射器public JavaFunction getMetamethod(Object obj, JavaReflector.Metamethod metamethod)
JavaReflector
接口,则首先从对象中查询元方法。如果对象提供了请求的元方法,则返回该元方法。否则,该方法可返回由此 Lua 状态中配置的 Java 反射器提供的元方法。需要访问元方法的客户端应该采用此方法,以确保持续地按类覆盖 Java 反射器。
obj
- 对象或 null
public Converter getConverter()
该方法可能会在已关闭的 Lua 状态上调用。
public void setConverter(Converter converter)
该方法可能会在已关闭的 Lua 状态上调用。
converter
- 转换器public final boolean isOpen()
该方法可能会在已关闭的 Lua 状态上调用。
public void close()
该方法可在已关闭的 Lua 状态中调用,在这种情况下不会产生任何效果。
public int gc(LuaState.GcAction what, int data)
what
- 要执行的操作data
- 某些操作所需的自变量(参见 Lua 参考手册)public void openLib(LuaState.Library library)
库
- 库public void openLibs()
该方法打开 LuaState.Library
枚举所定义的所有库。
public void register(NamedJavaFunction namedJavaFunction)
namedJavaFunction
- 要注册的 Java 函数public void register(String moduleName, NamedJavaFunction[] namedJavaFunctions)
moduleName
- 模块名称namedJavaFunctions
- 模块的 Java 函数public void load(InputStream inputStream, String chunkName) throws IOException
inputStream
- 输入流chunkName
- 片段的名称,用于在错误信息中IOException
- 如果发生 IO 错误public void load(String chunk, String chunkName)
chunk
- Lua 源代码片段chunkName
- 片段的名称,用于在错误信息中public void dump(OutputStream outputStream) throws IOException
outputStream
- 输出流IOException
- 如果发生 IO 错误public void call(int argCount, int returnCount)
MULTRET
,则堆栈中值的个数对应于所调用函数实际返回的值的个数。argCount
- 参数的个数returnCount
- 返回值的个数,或 MULTRET
以接受函数返回的所有值public void getGlobal(String name)
name
- 全局变量名称public void setGlobal(String name) throws LuaMemoryAllocationException, LuaRuntimeException
name
- 全局变量名称LuaMemoryAllocationException
LuaRuntimeException
public void pushBoolean(boolean b)
b
- 要压入的布尔值public void pushInteger(int n)
n
- 要压入的整数public void pushJavaFunction(JavaFunction javaFunction)
javaFunction
- 要压入的函数public void pushJavaObjectRaw(Object object)
如果你需要压入一个表示 Java 对象的 Lua 值,则调用 pushJavaObject(object)
。
你无法在未转换的情况下压入 null
,因为 null
不是 Java 对象。转换器会将 null
转换为 nil
。
object
- Java 对象pushJavaObject(Object)
public void pushJavaObject(Object object)
object
- Java 对象getConverter()
,setConverter(Converter)
public void pushNil()
public void pushNumber(double n)
n
- 要压入的数字public void pushString(String s)
s
- 要推送的字符串值public void pushString(byte[] b)
b
- 要推送的字节数组public void pushString(byte[] b, int count)
b
- 要推送的字节数组count
- 要从索引 0 开始推送的数组中的字节数量public boolean isBoolean(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isCFunction(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isFunction(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isJavaFunction(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isJavaObjectRaw(int index)
请注意,该方法不执行转换。如果你想检查该值是否可转换为 Java 对象,则调用 isJavaObject(index, Object.class)
。
堆栈索引可能未定义。
index
- 堆栈索引isJavaObject(int, Class)
public boolean isJavaObject(int index, Class<?> type)
堆栈索引可能未定义。
index
- 堆栈索引setConverter(Converter)
,getConverter()
public boolean isNil(int index)
nil
。堆栈索引可能未定义。
index
- 堆栈索引nil
public boolean isNone(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isNoneOrNil(int index)
nil
。堆栈索引可能未定义。
index
- 堆栈索引public boolean isNumber(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isString(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isTable(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean isThread(int index)
堆栈索引可能未定义。
index
- 堆栈索引public boolean equal(int index1, int index2)
index1
- 第一个堆栈索引index2
- 第二个堆栈索引public boolean lessThan(int index1, int index2) throws LuaMemoryAllocationException, LuaRuntimeException
index1
- 第一个堆栈索引index2
- 第二个堆栈索引LuaMemoryAllocationException
LuaRuntimeException
public int length(int index)
index
- 堆栈索引public boolean rawEqual(int index1, int index2)
index1
- 第一个堆栈索引index2
- 第二个堆栈索引public boolean toBoolean(int index)
false
和 nil
以外的所有值,布尔表示形式为 true
。index
- 堆栈索引public byte[] toByteArray(int index)
null
。index
- 堆栈索引public int toInteger(int index)
0
。index
- 堆栈索引0
public JavaFunction toJavaFunction(int index)
null
。index
- 堆栈索引null
public Object toJavaObjectRaw(int index)
null
。请注意,该方法不将值转换为 Java 对象。如果你需要表示指定索引处的该值的任何 Java 对象,则调用 toJavaObject(index, Object.class)
。
index
- 堆栈索引null
toJavaObject(int, Class)
public <T> T toJavaObject(int index, Class<T> type)
index
- 堆栈索引type
- 要转换到的 Java 类型ClassCastException
- 如果转换器不支持该转换getConverter()
,setConverter(Converter)
public double toNumber(int index)
0.0
。index
- 堆栈索引0.0
public long toPointer(int index)
0L
。不同的值返回不同的指针。除此之外,返回的值没有任何可移植意义。index
- 堆栈索引0L
public String toString(int index)
null
。index
- 堆栈索引null
public LuaType type(int index)
堆栈索引可能未定义。
index
- 堆栈索引null
public String typeName(int index)
堆栈索引可能未定义。
index
- 索引LuaType.displayText()
,Class.getCanonicalName()
public void concat(int n)
n
- 要连接的值的数量public int getTop()
public void insert(int index)
index
- 堆栈索引public void pop(int count)
count
- 要弹出的值的数量public void pushValue(int index)
index
- 堆栈索引public void remove(int index)
index
- 堆栈索引public void replace(int index)
index
- 堆栈索引public void setTop(int index)
栈的最高点可能会高于当前的栈顶。在这种情况下,新值设为 nil
。
index
- 栈的新顶部的索引public void getTable(int index)
index
- 包含表的栈索引public void getField(int index, String key)
index
- 包含表的栈索引key
- 字符串键public void newTable()
public void newTable(int arrayCount, int recordCount)
arrayCount
- 数组元素的数量recordCount
- 记录元素的数量public boolean next(int index)
index
- 包含表的栈索引public void rawGet(int index)
index
- 包含表的栈索引public void rawGet(int index, int key)
index
- 包含表的栈索引key
- 整数键public void rawSet(int index)
index
- 包含表的栈索引public void rawSet(int index, int key)
index
- 包含表的栈索引key
- 整数键public void setTable(int index)
index
- 包含表的栈索引public void setField(int index, String key)
index
- 包含表的栈索引key
- 字符串键public boolean getMetafield(int index, String key)
true
。如果该值没有元表,或元表不包含命名字段,则不会推入任何内容,并且该方法返回false
。index
- 包含需要从中获取元字段的值的堆栈索引key
- 字符串键public boolean getMetatable(int index)
false
且不会推入任何内容。index
- 包含需要从中获取元表的的值的堆栈索引public boolean setMetatable(int index)
index
- 包含需要为其设置元表的的值的堆栈索引public void getFEnv(int index)
nil
推入堆栈。index
- 包含需要从中获取环境表的的值的堆栈索引public boolean setFEnv(int index)
index
- 包含需要为其设置环境表的的值的堆栈索引public void newThread()
public int resume(int index, int argCount)
index
- 包含线程的堆栈索引argCount
- 要传递的参数数量public int status(int index)
0
。如果该线程已产生,则该方法返回 YIELD
。其他返回值指示已引发异常的错误。index
- 索引public int yield(int returnCount)
return luaState.yield(n)
。returnCount
- 要传递的结果数量public int ref(int index)
index
- 包含要存储该值的表格的堆栈索引unref(int, int)
public void unref(int index, int reference)
index
- 包含存储该值的表格的堆栈索引reference
- 引用整数键ref(int)
public int tableSize(int index)
由于减少了 JNI 过渡,该方法在优化性能上优于相同功能的 Java 实现。
index
- 包含表的栈索引public void tableMove(int index, int from, int to, int count)
由于减少了 JNI 过渡,该方法在优化性能上优于相同功能的 Java 实现。
index
- 包含表的栈索引from
- 开始移动的索引to
- 移动目标的索引count
- 要移动的元素数量public void checkArg(int index, boolean condition, String msg)
index
- 参数索引condition
- 条件msg
- 错误消息public boolean checkBoolean(int index)
index
- 参数索引public boolean checkBoolean(int index, boolean d)
nil
,则该方法返回指定的默认值。否则,该方法会抛出 Lua 运行时异常并附带描述性错误消息。index
- 参数索引d
- 默认值public byte[] checkByteArray(int index)
index
- 参数索引public byte[] checkByteArray(int index, byte[] d)
nil
,则该方法返回指定的默认值。否则,该方法会抛出 Lua 运行时异常并附带描述性错误消息。index
- 参数索引d
- 默认值public int checkInteger(int index)
index
- 参数索引public int checkInteger(int index, int d)
nil
,则该方法返回指定的默认值。否则,该方法会抛出 Lua 运行时异常并附带描述性错误消息。index
- 参数索引d
- 默认值public double checkNumber(int index)
index
- 参数索引public double checkNumber(int index, double d)
nil
,则方法返回指定的默认值。否则,该方法抛出一个带有描述性错误消息的 Lua 运行时异常。index
- 参数索引d
- 默认值public <T> T checkJavaObject(int index, Class<T> clazz)
请注意,转换器将nil
转换为null
。因此,如果值为nil
,则该方法可能会返回null
。
index
- 参数索引clazz
- 预期类型null
public <T> T checkJavaObject(int index, Class<T> clazz, T d)
nil
,则方法返回指定的默认值。否则,该方法抛出一个带有描述性错误消息的 Lua 运行时异常。index
- 参数索引clazz
- 预期的类d
- 默认值public String checkOption(int index, String[] options)
index
- 参数索引options
- 选项public String checkOption(int index, String[] options, String d)
nil
,则方法返回指定的默认值。否则,该方法将抛出一个带有描述性错误消息的 Lua 运行时异常。index
- 参数索引options
- 选项d
- 默认值public String checkString(int index)
index
- 参数索引public String checkString(int index, String d)
nil
,则方法返回指定的默认值。否则,该方法将抛出一个带有描述性错误消息的 Lua 运行时异常。index
- 参数索引d
- 默认值public void checkType(int index, LuaType type)
index
- 参数索引type
- 类型public LuaValueProxy getProxy(int index)
index
- 包含 Lua 值的堆栈索引public <T> T getProxy(int index, Class<T> interfaze)
LuaValueProxy
接口。index
- 包含表的栈索引interfaze
- 接口public LuaValueProxy getProxy(int index, Class<?>[] interfaces)
LuaValueProxy
接口。index
- 包含表的栈索引interfaces
- 接口