lualib.h

作者: 龙凕 | 来源:发表于2018-08-02 14:22 被阅读0次

先看源码及简要注释

/*
** $Id: lualib.h,v 1.45.1.1 2017/04/19 17:20:42 roberto Exp $
** Lua standard libraries
** See Copyright Notice in lua.h
*/


#ifndef lualib_h
#define lualib_h

#include "lua.h"

/* version suffix for environment variable names */
#define LUA_VERSUFFIX          "_" LUA_VERSION_MAJOR "_" LUA_VERSION_MINOR

//open the standard lua lib which provides a lot of useful functions and all implemented by C API
LUAMOD_API int (luaopen_base) (lua_State *L);

//open the coroutine lib
#define LUA_COLIBNAME   "coroutine"
LUAMOD_API int (luaopen_coroutine) (lua_State *L);

//open the table control lib
#define LUA_TABLIBNAME  "table"
LUAMOD_API int (luaopen_table) (lua_State *L);

//open the input&output lib
#define LUA_IOLIBNAME   "io"
LUAMOD_API int (luaopen_io) (lua_State *L);

//open the operating system lib
#define LUA_OSLIBNAME   "os"
LUAMOD_API int (luaopen_os) (lua_State *L);

//open string management lib
#define LUA_STRLIBNAME  "string"
LUAMOD_API int (luaopen_string) (lua_State *L);

//new lib for version 5.3, provides elementary support for UTF-8 format
#define LUA_UTF8LIBNAME "utf8"
LUAMOD_API int (luaopen_utf8) (lua_State *L);

//bit operation support
#define LUA_BITLIBNAME  "bit32"
LUAMOD_API int (luaopen_bit32) (lua_State *L);

//open math lib
#define LUA_MATHLIBNAME "math"
LUAMOD_API int (luaopen_math) (lua_State *L);

//open debug lib
#define LUA_DBLIBNAME   "debug"
LUAMOD_API int (luaopen_debug) (lua_State *L);

//open package management lib
#define LUA_LOADLIBNAME "package"
LUAMOD_API int (luaopen_package) (lua_State *L);


/* open all previous libraries */
LUALIB_API void (luaL_openlibs) (lua_State *L);


//the lua_assert cannot be the right value 
#if !defined(lua_assert)
#define lua_assert(x)   ((void)0)
#endif


#endif

相关文章

网友评论

      本文标题:lualib.h

      本文链接:https://www.haomeiwen.com/subject/ulnjvftx.html