aboutsummaryrefslogtreecommitdiff
path: root/src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-11-16 00:24:51 +0800
committerchai <chaifix@163.com>2018-11-16 00:24:51 +0800
commit831e814ce9bdb84e86c06c4a52008f6bdaaa00d6 (patch)
treef91fccc7d2628d6e0a39886134b2bb174f5eede4 /src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h
parent6dc75930fe5fe02f1af5489917752d315cf9e48f (diff)
*合并master到minimal分支
Diffstat (limited to 'src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h')
-rw-r--r--src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h b/src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h
new file mode 100644
index 0000000..fcc9dac
--- /dev/null
+++ b/src/3rdparty/LuaJIT-2.0.5/include/LuaJIT/lj_clib.h
@@ -0,0 +1,29 @@
+/*
+** FFI C library loader.
+** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
+*/
+
+#ifndef _LJ_CLIB_H
+#define _LJ_CLIB_H
+
+#include "lj_obj.h"
+
+#if LJ_HASFFI
+
+/* Namespace for C library indexing. */
+#define CLNS_INDEX ((1u<<CT_FUNC)|(1u<<CT_EXTERN)|(1u<<CT_CONSTVAL))
+
+/* C library namespace. */
+typedef struct CLibrary {
+ void *handle; /* Opaque handle for dynamic library loader. */
+ GCtab *cache; /* Cache for resolved symbols. Anchored in ud->env. */
+} CLibrary;
+
+LJ_FUNC TValue *lj_clib_index(lua_State *L, CLibrary *cl, GCstr *name);
+LJ_FUNC void lj_clib_load(lua_State *L, GCtab *mt, GCstr *name, int global);
+LJ_FUNC void lj_clib_unload(CLibrary *cl);
+LJ_FUNC void lj_clib_default(lua_State *L, GCtab *mt);
+
+#endif
+
+#endif