Unverified Commit 1990f957 authored by Terry Ellison's avatar Terry Ellison Committed by GitHub
Browse files

Updated ROTables 1st tranch (#2742)

Updated ROTables
parent e0f3dbed
...@@ -41,10 +41,10 @@ static int rtcmem_write32 (lua_State *L) ...@@ -41,10 +41,10 @@ static int rtcmem_write32 (lua_State *L)
// Module function map // Module function map
static const LUA_REG_TYPE rtcmem_map[] = { LROT_BEGIN(rtcmem)
{ LSTRKEY("read32"), LFUNCVAL(rtcmem_read32) }, LROT_FUNCENTRY( read32, rtcmem_read32 )
{ LSTRKEY("write32"), LFUNCVAL(rtcmem_write32) }, LROT_FUNCENTRY( write32, rtcmem_write32 )
{ LNILKEY, LNILVAL } LROT_END( rtcmem, NULL, 0 )
};
NODEMCU_MODULE(RTCMEM, "rtcmem", rtcmem_map, NULL);
NODEMCU_MODULE(RTCMEM, "rtcmem", rtcmem, NULL);
...@@ -228,14 +228,14 @@ static int rtctime_epoch2cal (lua_State *L) ...@@ -228,14 +228,14 @@ static int rtctime_epoch2cal (lua_State *L)
} }
// Module function map // Module function map
static const LUA_REG_TYPE rtctime_map[] = { LROT_BEGIN(rtctime)
{ LSTRKEY("set"), LFUNCVAL(rtctime_set) }, LROT_FUNCENTRY( set, rtctime_set )
{ LSTRKEY("get"), LFUNCVAL(rtctime_get) }, LROT_FUNCENTRY( get, rtctime_get )
{ LSTRKEY("adjust_delta"), LFUNCVAL(rtctime_adjust_delta) }, LROT_FUNCENTRY( adjust_delta, rtctime_adjust_delta )
{ LSTRKEY("dsleep"), LFUNCVAL(rtctime_dsleep) }, LROT_FUNCENTRY( dsleep, rtctime_dsleep )
{ LSTRKEY("dsleep_aligned"), LFUNCVAL(rtctime_dsleep_aligned) }, LROT_FUNCENTRY( dsleep_aligned, rtctime_dsleep_aligned )
{ LSTRKEY("epoch2cal"), LFUNCVAL(rtctime_epoch2cal) }, LROT_FUNCENTRY( epoch2cal, rtctime_epoch2cal )
{ LNILKEY, LNILVAL } LROT_END( rtctime, NULL, 0 )
};
NODEMCU_MODULE(RTCTIME, "rtctime", rtctime_map, NULL); NODEMCU_MODULE(RTCTIME, "rtctime", rtctime, NULL);
...@@ -247,19 +247,19 @@ static int si7021_lua_firmware(lua_State* L) { ...@@ -247,19 +247,19 @@ static int si7021_lua_firmware(lua_State* L) {
return 1; return 1;
} }
static const LUA_REG_TYPE si7021_map[] = { LROT_BEGIN(si7021)
{ LSTRKEY( "setup" ), LFUNCVAL(si7021_lua_setup) }, LROT_FUNCENTRY( setup, si7021_lua_setup )
{ LSTRKEY( "setting" ), LFUNCVAL(si7021_lua_setting) }, LROT_FUNCENTRY( setting, si7021_lua_setting )
{ LSTRKEY( "read" ), LFUNCVAL(si7021_lua_read) }, LROT_FUNCENTRY( read, si7021_lua_read )
{ LSTRKEY( "serial" ), LFUNCVAL(si7021_lua_serial) }, LROT_FUNCENTRY( serial, si7021_lua_serial )
{ LSTRKEY( "firmware" ), LFUNCVAL(si7021_lua_firmware) }, LROT_FUNCENTRY( firmware, si7021_lua_firmware )
{ LSTRKEY( "RH12_TEMP14" ), LNUMVAL(SI7021_RH12_TEMP14) }, LROT_NUMENTRY( RH12_TEMP14, SI7021_RH12_TEMP14 )
{ LSTRKEY( "RH08_TEMP12" ), LNUMVAL(SI7021_RH08_TEMP12) }, LROT_NUMENTRY( RH08_TEMP12, SI7021_RH08_TEMP12 )
{ LSTRKEY( "RH10_TEMP13" ), LNUMVAL(SI7021_RH10_TEMP13) }, LROT_NUMENTRY( RH10_TEMP13, SI7021_RH10_TEMP13 )
{ LSTRKEY( "RH11_TEMP11" ), LNUMVAL(SI7021_RH11_TEMP11) }, LROT_NUMENTRY( RH11_TEMP11, SI7021_RH11_TEMP11 )
{ LSTRKEY( "HEATER_ENABLE" ), LNUMVAL(SI7021_HEATER_ENABLE) }, LROT_NUMENTRY( HEATER_ENABLE, SI7021_HEATER_ENABLE )
{ LSTRKEY( "HEATER_DISABLE" ), LNUMVAL(SI7021_HEATER_DISABLE) }, LROT_NUMENTRY( HEATER_DISABLE, SI7021_HEATER_DISABLE )
{ LNILKEY, LNILVAL } LROT_END( si7021, NULL, 0 )
};
NODEMCU_MODULE(SI7021, "si7021", si7021_map, NULL); NODEMCU_MODULE(SI7021, "si7021", si7021, NULL);
...@@ -74,14 +74,13 @@ static int sigma_delta_settarget( lua_State *L ) ...@@ -74,14 +74,13 @@ static int sigma_delta_settarget( lua_State *L )
// Module function map // Module function map
static const LUA_REG_TYPE sigma_delta_map[] = LROT_BEGIN(sigma_delta)
{ LROT_FUNCENTRY( setup, sigma_delta_setup )
{ LSTRKEY( "setup" ), LFUNCVAL( sigma_delta_setup ) }, LROT_FUNCENTRY( close, sigma_delta_close )
{ LSTRKEY( "close" ), LFUNCVAL( sigma_delta_close ) }, LROT_FUNCENTRY( setpwmduty, sigma_delta_setpwmduty )
{ LSTRKEY( "setpwmduty" ), LFUNCVAL( sigma_delta_setpwmduty ) }, LROT_FUNCENTRY( setprescale, sigma_delta_setprescale )
{ LSTRKEY( "setprescale" ), LFUNCVAL( sigma_delta_setprescale ) }, LROT_FUNCENTRY( settarget, sigma_delta_settarget )
{ LSTRKEY( "settarget" ), LFUNCVAL( sigma_delta_settarget ) }, LROT_END( sigma_delta, NULL, 0 )
{ LNILKEY, LNILVAL }
};
NODEMCU_MODULE(SIGMA_DELTA, "sigma_delta", sigma_delta, NULL);
NODEMCU_MODULE(SIGMA_DELTA, "sigma_delta", sigma_delta_map, NULL);
...@@ -992,74 +992,33 @@ static int sjson_encoder_destructor(lua_State *L) { ...@@ -992,74 +992,33 @@ static int sjson_encoder_destructor(lua_State *L) {
return 0; return 0;
} }
#ifdef LOCAL_LUA LROT_BEGIN(sjson_encoder)
static const luaL_Reg sjson_encoder_map[] = { LROT_FUNCENTRY( read, sjson_encoder_read )
{ "read", sjson_encoder_read }, LROT_FUNCENTRY( __gc, sjson_encoder_destructor )
{ "__gc", sjson_encoder_destructor }, LROT_TABENTRY( __index, sjson_encoder )
{ NULL, NULL } LROT_END( sjson_encoder, sjson_encoder, LROT_MASK_GC_INDEX )
};
static const luaL_Reg sjson_decoder_map[] = { LROT_BEGIN(sjson_decoder)
{ "write", sjson_decoder_write }, LROT_FUNCENTRY( write, sjson_decoder_write )
{ "result", sjson_decoder_result }, LROT_FUNCENTRY( result, sjson_decoder_result )
{ "__gc", sjson_decoder_destructor }, LROT_FUNCENTRY( __gc, sjson_decoder_destructor )
{ NULL, NULL } LROT_TABENTRY( __index, sjson_decoder )
}; LROT_END( sjson_decoder, sjson_decoder, LROT_MASK_GC_INDEX )
static const luaL_Reg sjsonlib[] = {
{ "decode", sjson_decode }, LROT_BEGIN(sjson)
{ "decoder", sjson_decoder }, LROT_FUNCENTRY( encode, sjson_encode )
{ "encode", sjson_encode }, LROT_FUNCENTRY( decode, sjson_decode )
{ "encoder", sjson_encoder }, LROT_FUNCENTRY( encoder, sjson_encoder )
{NULL, NULL} LROT_FUNCENTRY( decoder, sjson_decoder )
}; LROT_LUDENTRY( NULL, 0 )
#else LROT_END( sjson, NULL, 0 )
static const LUA_REG_TYPE sjson_encoder_map[] = {
{ LSTRKEY( "read" ), LFUNCVAL( sjson_encoder_read ) },
{ LSTRKEY( "__gc" ), LFUNCVAL( sjson_encoder_destructor ) },
{ LSTRKEY( "__index" ), LROVAL( sjson_encoder_map ) },
{ LNILKEY, LNILVAL }
};
static const LUA_REG_TYPE sjson_decoder_map[] = {
{ LSTRKEY( "write" ), LFUNCVAL( sjson_decoder_write ) },
{ LSTRKEY( "result" ), LFUNCVAL( sjson_decoder_result ) },
{ LSTRKEY( "__gc" ), LFUNCVAL( sjson_decoder_destructor ) },
{ LSTRKEY( "__index" ), LROVAL( sjson_decoder_map ) },
{ LNILKEY, LNILVAL }
};
static const LUA_REG_TYPE sjson_map[] = {
{ LSTRKEY( "encode" ), LFUNCVAL( sjson_encode ) },
{ LSTRKEY( "decode" ), LFUNCVAL( sjson_decode ) },
{ LSTRKEY( "encoder" ), LFUNCVAL( sjson_encoder ) },
{ LSTRKEY( "decoder" ), LFUNCVAL( sjson_decoder ) },
{ LSTRKEY( "NULL" ), LUDATA( 0 ) },
{ LNILKEY, LNILVAL }
};
#endif
LUALIB_API int luaopen_sjson (lua_State *L) { LUALIB_API int luaopen_sjson (lua_State *L) {
#ifdef LOCAL_LUA luaL_rometatable(L, "sjson.decoder", LROT_TABLEREF(sjson_decoder));
luaL_register(L, LUA_SJSONLIBNAME, sjsonlib); luaL_rometatable(L, "sjson.encoder", LROT_TABLEREF(sjson_encoder));
lua_getglobal(L, LUA_SJSONLIBNAME);
lua_pushstring(L, "NULL");
lua_pushlightuserdata(L, 0);
lua_settable(L, -3);
lua_pop(L, 1);
luaL_newmetatable(L, "sjson.encoder");
luaL_register(L, NULL, sjson_encoder_map);
lua_setfield(L, -1, "__index");
luaL_newmetatable(L, "sjson.decoder");
luaL_register(L, NULL, sjson_decoder_map);
lua_setfield(L, -1, "__index");
#else
luaL_rometatable(L, "sjson.decoder", (void *)sjson_decoder_map);
luaL_rometatable(L, "sjson.encoder", (void *)sjson_encoder_map);
#endif
return 1; return 1;
} }
#ifndef LOCAL_LUA NODEMCU_MODULE(SJSON, "sjson", sjson, luaopen_sjson);
NODEMCU_MODULE(SJSON, "sjson", sjson_map, luaopen_sjson);
#endif
...@@ -869,13 +869,13 @@ static int sntp_open(lua_State *L) ...@@ -869,13 +869,13 @@ static int sntp_open(lua_State *L)
// Module function map // Module function map
static const LUA_REG_TYPE sntp_map[] = { LROT_BEGIN(sntp)
{ LSTRKEY("sync"), LFUNCVAL(sntp_sync) }, LROT_FUNCENTRY( sync, sntp_sync )
#ifdef LUA_USE_MODULES_RTCTIME #ifdef LUA_USE_MODULES_RTCTIME
{ LSTRKEY("setoffset"), LFUNCVAL(sntp_setoffset) }, LROT_FUNCENTRY( setoffset, sntp_setoffset )
{ LSTRKEY("getoffset"), LFUNCVAL(sntp_getoffset) }, LROT_FUNCENTRY( getoffset, sntp_getoffset )
#endif #endif
{ LNILKEY, LNILVAL } LROT_END( sntp, NULL, 0 )
};
NODEMCU_MODULE(SNTP, "sntp", sntp_map, sntp_open);
NODEMCU_MODULE(SNTP, "sntp", sntp, sntp_open);
...@@ -231,18 +231,18 @@ static int somfy_lua_sendcommand(lua_State* L) { // pin, remote, command, rollin ...@@ -231,18 +231,18 @@ static int somfy_lua_sendcommand(lua_State* L) { // pin, remote, command, rollin
return 0; return 0;
} }
static const LUA_REG_TYPE somfy_map[] = { LROT_BEGIN(somfy)
{ LSTRKEY( "UP" ), LNUMVAL( SOMFY_UP ) }, LROT_NUMENTRY( UP, SOMFY_UP )
{ LSTRKEY( "DOWN" ), LNUMVAL( SOMFY_DOWN ) }, LROT_NUMENTRY( DOWN, SOMFY_DOWN )
{ LSTRKEY( "PROG" ), LNUMVAL( SOMFY_PROG ) }, LROT_NUMENTRY( PROG, SOMFY_PROG )
{ LSTRKEY( "STOP" ), LNUMVAL( SOMFY_STOP ) }, LROT_NUMENTRY( STOP, SOMFY_STOP )
{ LSTRKEY( "sendcommand" ), LFUNCVAL(somfy_lua_sendcommand)}, LROT_FUNCENTRY( sendcommand, somfy_lua_sendcommand )
{ LNILKEY, LNILVAL} LROT_END( somfy, NULL, 0 )
};
int luaopen_somfy( lua_State *L ) { int luaopen_somfy( lua_State *L ) {
done_taskid = task_get_id((task_callback_t) somfy_transmissionDone); done_taskid = task_get_id((task_callback_t) somfy_transmissionDone);
return 0; return 0;
} }
NODEMCU_MODULE(SOMFY, "somfy", somfy_map, luaopen_somfy); NODEMCU_MODULE(SOMFY, "somfy", somfy, luaopen_somfy);
\ No newline at end of file \ No newline at end of file
...@@ -319,24 +319,24 @@ static int spi_set_clock_div( lua_State *L ) ...@@ -319,24 +319,24 @@ static int spi_set_clock_div( lua_State *L )
// Module function map // Module function map
static const LUA_REG_TYPE spi_map[] = { LROT_BEGIN(spi)
{ LSTRKEY( "setup" ), LFUNCVAL( spi_setup ) }, LROT_FUNCENTRY( setup, spi_setup )
{ LSTRKEY( "send" ), LFUNCVAL( spi_send_recv ) }, LROT_FUNCENTRY( send, spi_send_recv )
{ LSTRKEY( "recv" ), LFUNCVAL( spi_recv ) }, LROT_FUNCENTRY( recv, spi_recv )
{ LSTRKEY( "set_mosi" ), LFUNCVAL( spi_set_mosi ) }, LROT_FUNCENTRY( set_mosi, spi_set_mosi )
{ LSTRKEY( "get_miso" ), LFUNCVAL( spi_get_miso ) }, LROT_FUNCENTRY( get_miso, spi_get_miso )
{ LSTRKEY( "transaction" ), LFUNCVAL( spi_transaction ) }, LROT_FUNCENTRY( transaction, spi_transaction )
{ LSTRKEY( "set_clock_div" ), LFUNCVAL( spi_set_clock_div ) }, LROT_FUNCENTRY( set_clock_div, spi_set_clock_div )
{ LSTRKEY( "MASTER" ), LNUMVAL( PLATFORM_SPI_MASTER ) }, LROT_NUMENTRY( MASTER, PLATFORM_SPI_MASTER )
{ LSTRKEY( "SLAVE" ), LNUMVAL( PLATFORM_SPI_SLAVE) }, LROT_NUMENTRY( SLAVE, PLATFORM_SPI_SLAVE )
{ LSTRKEY( "CPHA_LOW" ), LNUMVAL( PLATFORM_SPI_CPHA_LOW) }, LROT_NUMENTRY( CPHA_LOW, PLATFORM_SPI_CPHA_LOW )
{ LSTRKEY( "CPHA_HIGH" ), LNUMVAL( PLATFORM_SPI_CPHA_HIGH) }, LROT_NUMENTRY( CPHA_HIGH, PLATFORM_SPI_CPHA_HIGH )
{ LSTRKEY( "CPOL_LOW" ), LNUMVAL( PLATFORM_SPI_CPOL_LOW) }, LROT_NUMENTRY( CPOL_LOW, PLATFORM_SPI_CPOL_LOW )
{ LSTRKEY( "CPOL_HIGH" ), LNUMVAL( PLATFORM_SPI_CPOL_HIGH) }, LROT_NUMENTRY( CPOL_HIGH, PLATFORM_SPI_CPOL_HIGH )
{ LSTRKEY( "DATABITS_8" ), LNUMVAL( 8 ) }, LROT_NUMENTRY( DATABITS_8, 8 )
{ LSTRKEY( "HALFDUPLEX" ), LNUMVAL( SPI_HALFDUPLEX ) }, LROT_NUMENTRY( HALFDUPLEX, SPI_HALFDUPLEX )
{ LSTRKEY( "FULLDUPLEX" ), LNUMVAL( SPI_FULLDUPLEX ) }, LROT_NUMENTRY( FULLDUPLEX, SPI_FULLDUPLEX )
{ LNILKEY, LNILVAL } LROT_END( spi, NULL, 0 )
};
NODEMCU_MODULE(SPI, "spi", spi_map, NULL); NODEMCU_MODULE(SPI, "spi", spi, NULL);
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE *
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
************************************************************************/ ************************************************************************/
#if 0
#define LSQLITE_VERSION "0.9.4" #define LSQLITE_VERSION "0.9.4"
#define LSQLITE_OMIT_UPDATE_HOOK 1 #define LSQLITE_OMIT_UPDATE_HOOK 1
#define SQLITE_OMIT_PROGRESS_CALLBACK 1 #define SQLITE_OMIT_PROGRESS_CALLBACK 1
...@@ -2429,3 +2430,4 @@ LUALIB_API int luaopen_lsqlite3(lua_State *L) { ...@@ -2429,3 +2430,4 @@ LUALIB_API int luaopen_lsqlite3(lua_State *L) {
} }
NODEMCU_MODULE(SQLITE3, "sqlite3", sqlitelib, luaopen_lsqlite3); NODEMCU_MODULE(SQLITE3, "sqlite3", sqlitelib, luaopen_lsqlite3);
#endif
...@@ -389,13 +389,12 @@ static int b_size (lua_State *L) { ...@@ -389,13 +389,12 @@ static int b_size (lua_State *L) {
/* }====================================================== */ /* }====================================================== */
LROT_BEGIN(thislib)
LROT_FUNCENTRY( pack, b_pack )
LROT_FUNCENTRY( unpack, b_unpack )
LROT_FUNCENTRY( size, b_size )
LROT_END( thislib, NULL, 0 )
static const LUA_REG_TYPE thislib[] = {
{LSTRKEY("pack"), LFUNCVAL(b_pack)},
{LSTRKEY("unpack"), LFUNCVAL(b_unpack)},
{LSTRKEY("size"), LFUNCVAL(b_size)},
{LNILKEY, LNILVAL}
};
NODEMCU_MODULE(STRUCT, "struct", thislib, NULL); NODEMCU_MODULE(STRUCT, "struct", thislib, NULL);
......
...@@ -196,17 +196,17 @@ static int switec_open(lua_State *L) ...@@ -196,17 +196,17 @@ static int switec_open(lua_State *L)
// Module function map // Module function map
static const LUA_REG_TYPE switec_map[] = { LROT_BEGIN(switec)
{ LSTRKEY( "setup" ), LFUNCVAL( lswitec_setup ) }, LROT_FUNCENTRY( setup, lswitec_setup )
{ LSTRKEY( "close" ), LFUNCVAL( lswitec_close ) }, LROT_FUNCENTRY( close, lswitec_close )
{ LSTRKEY( "reset" ), LFUNCVAL( lswitec_reset ) }, LROT_FUNCENTRY( reset, lswitec_reset )
{ LSTRKEY( "moveto" ), LFUNCVAL( lswitec_moveto) }, LROT_FUNCENTRY( moveto, lswitec_moveto )
{ LSTRKEY( "getpos" ), LFUNCVAL( lswitec_getpos) }, LROT_FUNCENTRY( getpos, lswitec_getpos )
#ifdef SQITEC_DEBUG #ifdef SQITEC_DEBUG
{ LSTRKEY( "dequeue" ), LFUNCVAL( lswitec_dequeue) }, LROT_FUNCENTRY( dequeue, lswitec_dequeue )
#endif #endif
{ LNILKEY, LNILVAL } LROT_END( switec, NULL, 0 )
};
NODEMCU_MODULE(SWITEC, "switec", switec_map, switec_open);
NODEMCU_MODULE(SWITEC, "switec", switec, switec_open);
...@@ -342,14 +342,14 @@ uint8_t tcs34725GetRawData(lua_State* L) ...@@ -342,14 +342,14 @@ uint8_t tcs34725GetRawData(lua_State* L)
} }
static const LUA_REG_TYPE tcs34725_map[] = { LROT_BEGIN(tcs34725)
{ LSTRKEY( "setup" ), LFUNCVAL(tcs34725Setup)}, LROT_FUNCENTRY( setup, tcs34725Setup )
{ LSTRKEY( "enable" ), LFUNCVAL(tcs34725Enable)}, LROT_FUNCENTRY( enable, tcs34725Enable )
{ LSTRKEY( "disable" ), LFUNCVAL(tcs34725Disable)}, LROT_FUNCENTRY( disable, tcs34725Disable )
{ LSTRKEY( "raw" ), LFUNCVAL(tcs34725GetRawData)}, LROT_FUNCENTRY( raw, tcs34725GetRawData )
{ LSTRKEY( "setGain" ), LFUNCVAL(tcs34725LuaSetGain)}, LROT_FUNCENTRY( setGain, tcs34725LuaSetGain )
{ LSTRKEY( "setIntegrationTime" ), LFUNCVAL(tcs34725LuaSetIntegrationTime)}, LROT_FUNCENTRY( setIntegrationTime, tcs34725LuaSetIntegrationTime )
{ LNILKEY, LNILVAL} LROT_END( tcs34725, NULL, 0 )
};
NODEMCU_MODULE(TCS34725, "tcs34725", tcs34725_map, NULL); NODEMCU_MODULE(TCS34725, "tcs34725", tcs34725, NULL);
\ No newline at end of file \ No newline at end of file
...@@ -31,7 +31,7 @@ __attribute__((section(".servercert.flash"))) unsigned char tls_server_cert_area ...@@ -31,7 +31,7 @@ __attribute__((section(".servercert.flash"))) unsigned char tls_server_cert_area
__attribute__((section(".clientcert.flash"))) unsigned char tls_client_cert_area[INTERNAL_FLASH_SECTOR_SIZE]; __attribute__((section(".clientcert.flash"))) unsigned char tls_client_cert_area[INTERNAL_FLASH_SECTOR_SIZE];
extern int tls_socket_create( lua_State *L ); extern int tls_socket_create( lua_State *L );
extern const LUA_REG_TYPE tls_cert_map[]; LROT_EXTERN(tls_cert);
typedef struct { typedef struct {
struct espconn *pesp_conn; struct espconn *pesp_conn;
...@@ -613,40 +613,40 @@ static int tls_set_debug_threshold(lua_State *L) { ...@@ -613,40 +613,40 @@ static int tls_set_debug_threshold(lua_State *L) {
} }
#endif #endif
static const LUA_REG_TYPE tls_socket_map[] = { LROT_BEGIN(tls_socket)
{ LSTRKEY( "connect" ), LFUNCVAL( tls_socket_connect ) }, LROT_FUNCENTRY( connect, tls_socket_connect )
{ LSTRKEY( "close" ), LFUNCVAL( tls_socket_close ) }, LROT_FUNCENTRY( close, tls_socket_close )
{ LSTRKEY( "on" ), LFUNCVAL( tls_socket_on ) }, LROT_FUNCENTRY( on, tls_socket_on )
{ LSTRKEY( "send" ), LFUNCVAL( tls_socket_send ) }, LROT_FUNCENTRY( send, tls_socket_send )
{ LSTRKEY( "hold" ), LFUNCVAL( tls_socket_hold ) }, LROT_FUNCENTRY( hold, tls_socket_hold )
{ LSTRKEY( "unhold" ), LFUNCVAL( tls_socket_unhold ) }, LROT_FUNCENTRY( unhold, tls_socket_unhold )
{ LSTRKEY( "getpeer" ), LFUNCVAL( tls_socket_getpeer ) }, LROT_FUNCENTRY( getpeer, tls_socket_getpeer )
{ LSTRKEY( "__gc" ), LFUNCVAL( tls_socket_delete ) }, LROT_FUNCENTRY( __gc, tls_socket_delete )
{ LSTRKEY( "__index" ), LROVAL( tls_socket_map ) }, LROT_TABENTRY( __index, tls_socket )
{ LNILKEY, LNILVAL } LROT_END( tls_socket, tls_socket, 0 )
};
const LUA_REG_TYPE tls_cert_map[] = { LROT_PUBLIC_BEGIN(tls_cert)
{ LSTRKEY( "verify" ), LFUNCVAL( tls_cert_verify ) }, LROT_FUNCENTRY( verify, tls_cert_verify )
{ LSTRKEY( "auth" ), LFUNCVAL( tls_cert_auth ) }, LROT_FUNCENTRY( auth, tls_cert_auth )
{ LSTRKEY( "__index" ), LROVAL( tls_cert_map ) }, LROT_TABENTRY( __index, tls_cert )
{ LNILKEY, LNILVAL } LROT_END( tls_cert, tls_cert, 0 )
};
static const LUA_REG_TYPE tls_map[] = { LROT_BEGIN(tls)
{ LSTRKEY( "createConnection" ), LFUNCVAL( tls_socket_create ) }, LROT_FUNCENTRY( createConnection, tls_socket_create )
#if defined(MBEDTLS_DEBUG_C) #if defined(MBEDTLS_DEBUG_C)
{ LSTRKEY( "setDebug" ), LFUNCVAL( tls_set_debug_threshold ) }, LROT_FUNCENTRY( setDebug, tls_set_debug_threshold )
#endif #endif
{ LSTRKEY( "cert" ), LROVAL( tls_cert_map ) }, LROT_TABENTRY( cert, tls_cert )
{ LSTRKEY( "__metatable" ), LROVAL( tls_map ) }, LROT_TABENTRY( __metatable, tls )
{ LNILKEY, LNILVAL } LROT_END( tls, tls, 0 )
};
int luaopen_tls( lua_State *L ) { int luaopen_tls( lua_State *L ) {
luaL_rometatable(L, "tls.socket", (void *)tls_socket_map); // create metatable for net.server luaL_rometatable(L, "tls.socket", LROT_TABLEREF(tls_socket));
return 0; return 0;
} }
NODEMCU_MODULE(TLS, "tls", tls_map, luaopen_tls); NODEMCU_MODULE(TLS, "tls", tls, luaopen_tls);
#endif #endif
...@@ -100,15 +100,14 @@ static int ICACHE_FLASH_ATTR tm1829_write(lua_State* L) ...@@ -100,15 +100,14 @@ static int ICACHE_FLASH_ATTR tm1829_write(lua_State* L)
return 0; return 0;
} }
static const LUA_REG_TYPE tm1829_map[] = LROT_BEGIN(tm1829)
{ LROT_FUNCENTRY( write, tm1829_write )
{ LSTRKEY( "write" ), LFUNCVAL( tm1829_write) }, LROT_END( tm1829, NULL, 0 )
{ LNILKEY, LNILVAL }
};
int luaopen_tm1829(lua_State *L) { int luaopen_tm1829(lua_State *L) {
// TODO: Make sure that the GPIO system is initialized // TODO: Make sure that the GPIO system is initialized
return 0; return 0;
} }
NODEMCU_MODULE(TM1829, "tm1829", tm1829_map, luaopen_tm1829); NODEMCU_MODULE(TM1829, "tm1829", tm1829, luaopen_tm1829);
...@@ -369,43 +369,43 @@ static int tmr_create( lua_State *L ) { ...@@ -369,43 +369,43 @@ static int tmr_create( lua_State *L ) {
// Module function map // Module function map
static const LUA_REG_TYPE tmr_dyn_map[] = { LROT_BEGIN(tmr_dyn)
{ LSTRKEY( "register" ), LFUNCVAL( tmr_register ) }, LROT_FUNCENTRY( register, tmr_register )
{ LSTRKEY( "alarm" ), LFUNCVAL( tmr_alarm ) }, LROT_FUNCENTRY( alarm, tmr_alarm )
{ LSTRKEY( "start" ), LFUNCVAL( tmr_start ) }, LROT_FUNCENTRY( start, tmr_start )
{ LSTRKEY( "stop" ), LFUNCVAL( tmr_stop ) }, LROT_FUNCENTRY( stop, tmr_stop )
{ LSTRKEY( "unregister" ), LFUNCVAL( tmr_unregister ) }, LROT_FUNCENTRY( unregister, tmr_unregister )
{ LSTRKEY( "state" ), LFUNCVAL( tmr_state ) }, LROT_FUNCENTRY( state, tmr_state )
{ LSTRKEY( "interval" ), LFUNCVAL( tmr_interval) }, LROT_FUNCENTRY( interval, tmr_interval )
#ifdef TIMER_SUSPEND_ENABLE #ifdef TIMER_SUSPEND_ENABLE
{ LSTRKEY( "suspend" ), LFUNCVAL( tmr_suspend ) }, LROT_FUNCENTRY( suspend, tmr_suspend )
{ LSTRKEY( "resume" ), LFUNCVAL( tmr_resume ) }, LROT_FUNCENTRY( resume, tmr_resume )
#endif #endif
{ LSTRKEY( "__gc" ), LFUNCVAL( tmr_unregister ) }, LROT_FUNCENTRY( __gc, tmr_unregister )
{ LSTRKEY( "__index" ), LROVAL( tmr_dyn_map ) }, LROT_TABENTRY( __index, tmr_dyn )
{ LNILKEY, LNILVAL } LROT_END( tmr_dyn, tmr_dyn, LROT_MASK_GC_INDEX )
};
static const LUA_REG_TYPE tmr_map[] = { LROT_BEGIN(tmr)
{ LSTRKEY( "delay" ), LFUNCVAL( tmr_delay ) }, LROT_FUNCENTRY( delay, tmr_delay )
{ LSTRKEY( "now" ), LFUNCVAL( tmr_now ) }, LROT_FUNCENTRY( now, tmr_now )
{ LSTRKEY( "wdclr" ), LFUNCVAL( tmr_wdclr ) }, LROT_FUNCENTRY( wdclr, tmr_wdclr )
{ LSTRKEY( "softwd" ), LFUNCVAL( tmr_softwd ) }, LROT_FUNCENTRY( softwd, tmr_softwd )
{ LSTRKEY( "time" ), LFUNCVAL( tmr_time ) }, LROT_FUNCENTRY( time, tmr_time )
#ifdef TIMER_SUSPEND_ENABLE #ifdef TIMER_SUSPEND_ENABLE
{ LSTRKEY( "suspend_all" ), LFUNCVAL( tmr_suspend_all ) }, LROT_FUNCENTRY( suspend_all, tmr_suspend_all )
{ LSTRKEY( "resume_all" ), LFUNCVAL( tmr_resume_all ) }, LROT_FUNCENTRY( resume_all, tmr_resume_all )
#endif #endif
{ LSTRKEY( "create" ), LFUNCVAL( tmr_create ) }, LROT_FUNCENTRY( create, tmr_create )
{ LSTRKEY( "ALARM_SINGLE" ), LNUMVAL( TIMER_MODE_SINGLE ) }, LROT_NUMENTRY( ALARM_SINGLE, TIMER_MODE_SINGLE )
{ LSTRKEY( "ALARM_SEMI" ), LNUMVAL( TIMER_MODE_SEMI ) }, LROT_NUMENTRY( ALARM_SEMI, TIMER_MODE_SEMI )
{ LSTRKEY( "ALARM_AUTO" ), LNUMVAL( TIMER_MODE_AUTO ) }, LROT_NUMENTRY( ALARM_AUTO, TIMER_MODE_AUTO )
{ LNILKEY, LNILVAL } LROT_END( tmr, NULL, 0 )
};
#include "pm/swtimer.h" #include "pm/swtimer.h"
int luaopen_tmr( lua_State *L ){ int luaopen_tmr( lua_State *L ){
luaL_rometatable(L, "tmr.timer", (void *)tmr_dyn_map); luaL_rometatable(L, "tmr.timer", LROT_TABLEREF(tmr_dyn));
last_rtc_time=system_get_rtc_time(); // Right now is time 0 last_rtc_time=system_get_rtc_time(); // Right now is time 0
last_rtc_time_us=0; last_rtc_time_us=0;
...@@ -425,4 +425,4 @@ int luaopen_tmr( lua_State *L ){ ...@@ -425,4 +425,4 @@ int luaopen_tmr( lua_State *L ){
return 0; return 0;
} }
NODEMCU_MODULE(TMR, "tmr", tmr_map, luaopen_tmr); NODEMCU_MODULE(TMR, "tmr", tmr, luaopen_tmr);
...@@ -101,27 +101,27 @@ static int ICACHE_FLASH_ATTR tsl2561_lua_getchannels(lua_State* L) { ...@@ -101,27 +101,27 @@ static int ICACHE_FLASH_ATTR tsl2561_lua_getchannels(lua_State* L) {
} }
// Module function map // Module function map
static const LUA_REG_TYPE tsl2561_map[] = { LROT_BEGIN(tsl2561)
{ LSTRKEY( "settiming" ), LFUNCVAL( tsl2561_lua_settiming)}, LROT_FUNCENTRY( settiming, tsl2561_lua_settiming )
{ LSTRKEY( "getlux" ), LFUNCVAL( tsl2561_lua_calclux )}, LROT_FUNCENTRY( getlux, tsl2561_lua_calclux )
{ LSTRKEY( "getrawchannels" ), LFUNCVAL( tsl2561_lua_getchannels )}, LROT_FUNCENTRY( getrawchannels, tsl2561_lua_getchannels )
{ LSTRKEY( "init" ), LFUNCVAL( tsl2561_init )}, LROT_FUNCENTRY( init, tsl2561_init )
{ LSTRKEY( "TSL2561_OK" ), LNUMVAL( TSL2561_ERROR_OK )}, LROT_NUMENTRY( TSL2561_OK, TSL2561_ERROR_OK )
{ LSTRKEY( "TSL2561_ERROR_I2CINIT" ), LNUMVAL( TSL2561_ERROR_I2CINIT )}, LROT_NUMENTRY( TSL2561_ERROR_I2CINIT, TSL2561_ERROR_I2CINIT )
{ LSTRKEY( "TSL2561_ERROR_I2CBUSY" ), LNUMVAL( TSL2561_ERROR_I2CBUSY )}, LROT_NUMENTRY( TSL2561_ERROR_I2CBUSY, TSL2561_ERROR_I2CBUSY )
{ LSTRKEY( "TSL2561_ERROR_NOINIT" ), LNUMVAL( TSL2561_ERROR_NOINIT )}, LROT_NUMENTRY( TSL2561_ERROR_NOINIT, TSL2561_ERROR_NOINIT )
{ LSTRKEY( "TSL2561_ERROR_LAST" ), LNUMVAL( TSL2561_ERROR_LAST )}, LROT_NUMENTRY( TSL2561_ERROR_LAST, TSL2561_ERROR_LAST )
{ LSTRKEY( "INTEGRATIONTIME_13MS" ), LNUMVAL( TSL2561_INTEGRATIONTIME_13MS )}, LROT_NUMENTRY( INTEGRATIONTIME_13MS, TSL2561_INTEGRATIONTIME_13MS )
{ LSTRKEY( "INTEGRATIONTIME_101MS" ), LNUMVAL( TSL2561_INTEGRATIONTIME_101MS )}, LROT_NUMENTRY( INTEGRATIONTIME_101MS, TSL2561_INTEGRATIONTIME_101MS )
{ LSTRKEY( "INTEGRATIONTIME_402MS" ), LNUMVAL( TSL2561_INTEGRATIONTIME_402MS )}, LROT_NUMENTRY( INTEGRATIONTIME_402MS, TSL2561_INTEGRATIONTIME_402MS )
{ LSTRKEY( "GAIN_1X" ), LNUMVAL( TSL2561_GAIN_1X )}, LROT_NUMENTRY( GAIN_1X, TSL2561_GAIN_1X )
{ LSTRKEY( "GAIN_16X" ), LNUMVAL( TSL2561_GAIN_16X )}, LROT_NUMENTRY( GAIN_16X, TSL2561_GAIN_16X )
{ LSTRKEY( "PACKAGE_CS" ), LNUMVAL( TSL2561_PACKAGE_CS )}, LROT_NUMENTRY( PACKAGE_CS, TSL2561_PACKAGE_CS )
{ LSTRKEY( "PACKAGE_T_FN_CL" ), LNUMVAL( TSL2561_PACKAGE_T_FN_CL )}, LROT_NUMENTRY( PACKAGE_T_FN_CL, TSL2561_PACKAGE_T_FN_CL )
{ LSTRKEY( "ADDRESS_GND" ), LNUMVAL( TSL2561_ADDRESS_GND )}, LROT_NUMENTRY( ADDRESS_GND, TSL2561_ADDRESS_GND )
{ LSTRKEY( "ADDRESS_FLOAT" ), LNUMVAL( TSL2561_ADDRESS_FLOAT )}, LROT_NUMENTRY( ADDRESS_FLOAT, TSL2561_ADDRESS_FLOAT )
{ LSTRKEY( "ADDRESS_VDD" ), LNUMVAL( TSL2561_ADDRESS_VDD )}, LROT_NUMENTRY( ADDRESS_VDD, TSL2561_ADDRESS_VDD )
{ LNILKEY, LNILVAL} LROT_END( tsl2561, NULL, 0 )
};
NODEMCU_MODULE(TSL2561, "tsl2561", tsl2561_map, NULL);
NODEMCU_MODULE(TSL2561, "tsl2561", tsl2561, NULL);
...@@ -566,52 +566,51 @@ static int lu8g2_updateDisplayArea( lua_State *L ) ...@@ -566,52 +566,51 @@ static int lu8g2_updateDisplayArea( lua_State *L )
} }
static const LUA_REG_TYPE lu8g2_display_map[] = { LROT_BEGIN(lu8g2_display)
{ LSTRKEY( "clearBuffer" ), LFUNCVAL( lu8g2_clearBuffer ) }, LROT_FUNCENTRY( clearBuffer, lu8g2_clearBuffer )
{ LSTRKEY( "drawBox" ), LFUNCVAL( lu8g2_drawBox ) }, LROT_FUNCENTRY( drawBox, lu8g2_drawBox )
{ LSTRKEY( "drawCircle" ), LFUNCVAL( lu8g2_drawCircle ) }, LROT_FUNCENTRY( drawCircle, lu8g2_drawCircle )
{ LSTRKEY( "drawDisc" ), LFUNCVAL( lu8g2_drawDisc ) }, LROT_FUNCENTRY( drawDisc, lu8g2_drawDisc )
{ LSTRKEY( "drawEllipse" ), LFUNCVAL( lu8g2_drawEllipse ) }, LROT_FUNCENTRY( drawEllipse, lu8g2_drawEllipse )
{ LSTRKEY( "drawFilledEllipse" ), LFUNCVAL( lu8g2_drawFilledEllipse ) }, LROT_FUNCENTRY( drawFilledEllipse, lu8g2_drawFilledEllipse )
{ LSTRKEY( "drawFrame" ), LFUNCVAL( lu8g2_drawFrame ) }, LROT_FUNCENTRY( drawFrame, lu8g2_drawFrame )
{ LSTRKEY( "drawGlyph" ), LFUNCVAL( lu8g2_drawGlyph ) }, LROT_FUNCENTRY( drawGlyph, lu8g2_drawGlyph )
{ LSTRKEY( "drawHLine" ), LFUNCVAL( lu8g2_drawHLine ) }, LROT_FUNCENTRY( drawHLine, lu8g2_drawHLine )
{ LSTRKEY( "drawLine" ), LFUNCVAL( lu8g2_drawLine ) }, LROT_FUNCENTRY( drawLine, lu8g2_drawLine )
{ LSTRKEY( "drawPixel" ), LFUNCVAL( lu8g2_drawPixel ) }, LROT_FUNCENTRY( drawPixel, lu8g2_drawPixel )
{ LSTRKEY( "drawRBox" ), LFUNCVAL( lu8g2_drawRBox ) }, LROT_FUNCENTRY( drawRBox, lu8g2_drawRBox )
{ LSTRKEY( "drawRFrame" ), LFUNCVAL( lu8g2_drawRFrame ) }, LROT_FUNCENTRY( drawRFrame, lu8g2_drawRFrame )
{ LSTRKEY( "drawStr" ), LFUNCVAL( lu8g2_drawStr ) }, LROT_FUNCENTRY( drawStr, lu8g2_drawStr )
{ LSTRKEY( "drawTriangle" ), LFUNCVAL( lu8g2_drawTriangle ) }, LROT_FUNCENTRY( drawTriangle, lu8g2_drawTriangle )
{ LSTRKEY( "drawUTF8" ), LFUNCVAL( lu8g2_drawUTF8 ) }, LROT_FUNCENTRY( drawUTF8, lu8g2_drawUTF8 )
{ LSTRKEY( "drawVLine" ), LFUNCVAL( lu8g2_drawVLine ) }, LROT_FUNCENTRY( drawVLine, lu8g2_drawVLine )
{ LSTRKEY( "drawXBM" ), LFUNCVAL( lu8g2_drawXBM ) }, LROT_FUNCENTRY( drawXBM, lu8g2_drawXBM )
{ LSTRKEY( "getAscent" ), LFUNCVAL( lu8g2_getAscent ) }, LROT_FUNCENTRY( getAscent, lu8g2_getAscent )
{ LSTRKEY( "getDescent" ), LFUNCVAL( lu8g2_getDescent ) }, LROT_FUNCENTRY( getDescent, lu8g2_getDescent )
{ LSTRKEY( "getStrWidth" ), LFUNCVAL( lu8g2_getStrWidth ) }, LROT_FUNCENTRY( getStrWidth, lu8g2_getStrWidth )
{ LSTRKEY( "getUTF8Width" ), LFUNCVAL( lu8g2_getUTF8Width ) }, LROT_FUNCENTRY( getUTF8Width, lu8g2_getUTF8Width )
{ LSTRKEY( "sendBuffer" ), LFUNCVAL( lu8g2_sendBuffer ) }, LROT_FUNCENTRY( sendBuffer, lu8g2_sendBuffer )
{ LSTRKEY( "setBitmapMode" ), LFUNCVAL( lu8g2_setBitmapMode ) }, LROT_FUNCENTRY( setBitmapMode, lu8g2_setBitmapMode )
{ LSTRKEY( "setContrast" ), LFUNCVAL( lu8g2_setContrast ) }, LROT_FUNCENTRY( setContrast, lu8g2_setContrast )
{ LSTRKEY( "setDisplayRotation" ), LFUNCVAL( lu8g2_setDisplayRotation ) }, LROT_FUNCENTRY( setDisplayRotation, lu8g2_setDisplayRotation )
{ LSTRKEY( "setDrawColor" ), LFUNCVAL( lu8g2_setDrawColor ) }, LROT_FUNCENTRY( setDrawColor, lu8g2_setDrawColor )
{ LSTRKEY( "setFlipMode" ), LFUNCVAL( lu8g2_setFlipMode ) }, LROT_FUNCENTRY( setFlipMode, lu8g2_setFlipMode )
{ LSTRKEY( "setFont" ), LFUNCVAL( lu8g2_setFont ) }, LROT_FUNCENTRY( setFont, lu8g2_setFont )
{ LSTRKEY( "setFontDirection" ), LFUNCVAL( lu8g2_setFontDirection ) }, LROT_FUNCENTRY( setFontDirection, lu8g2_setFontDirection )
{ LSTRKEY( "setFontMode" ), LFUNCVAL( lu8g2_setFontMode ) }, LROT_FUNCENTRY( setFontMode, lu8g2_setFontMode )
{ LSTRKEY( "setFontPosBaseline" ), LFUNCVAL( lu8g2_setFontPosBaseline ) }, LROT_FUNCENTRY( setFontPosBaseline, lu8g2_setFontPosBaseline )
{ LSTRKEY( "setFontPosBottom" ), LFUNCVAL( lu8g2_setFontPosBottom ) }, LROT_FUNCENTRY( setFontPosBottom, lu8g2_setFontPosBottom )
{ LSTRKEY( "setFontPosTop" ), LFUNCVAL( lu8g2_setFontPosTop ) }, LROT_FUNCENTRY( setFontPosTop, lu8g2_setFontPosTop )
{ LSTRKEY( "setFontPosCenter" ), LFUNCVAL( lu8g2_setFontPosCenter ) }, LROT_FUNCENTRY( setFontPosCenter, lu8g2_setFontPosCenter )
{ LSTRKEY( "setFontRefHeightAll" ), LFUNCVAL( lu8g2_setFontRefHeightAll ) }, LROT_FUNCENTRY( setFontRefHeightAll, lu8g2_setFontRefHeightAll )
{ LSTRKEY( "setFontRefHeightExtendedText" ), LFUNCVAL( lu8g2_setFontRefHeightExtendedText ) }, LROT_FUNCENTRY( setFontRefHeightExtendedText, lu8g2_setFontRefHeightExtendedText )
{ LSTRKEY( "setFontRefHeightText" ), LFUNCVAL( lu8g2_setFontRefHeightText ) }, LROT_FUNCENTRY( setFontRefHeightText, lu8g2_setFontRefHeightText )
{ LSTRKEY( "setPowerSave" ), LFUNCVAL( lu8g2_setPowerSave ) }, LROT_FUNCENTRY( setPowerSave, lu8g2_setPowerSave )
{ LSTRKEY( "updateDispla" ), LFUNCVAL( lu8g2_updateDisplay ) }, LROT_FUNCENTRY( updateDispla, lu8g2_updateDisplay )
{ LSTRKEY( "updateDisplayArea" ), LFUNCVAL( lu8g2_updateDisplayArea ) }, LROT_FUNCENTRY( updateDisplayArea, lu8g2_updateDisplayArea )
//{ LSTRKEY( "__gc" ), LFUNCVAL( lu8g2_display_free ) }, // LROT_FUNCENTRY( __gc, lu8g2_display_free )
{ LSTRKEY( "__index" ), LROVAL( lu8g2_display_map ) }, LROT_TABENTRY( __index, lu8g2_display )
{LNILKEY, LNILVAL} LROT_END( lu8g2_display, lu8g2_display, LROT_MASK_GC_INDEX )
};
uint8_t u8x8_d_overlay(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr); uint8_t u8x8_d_overlay(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);
...@@ -808,36 +807,33 @@ U8G2_DISPLAY_TABLE_SPI ...@@ -808,36 +807,33 @@ U8G2_DISPLAY_TABLE_SPI
#undef U8G2_FONT_TABLE_ENTRY #undef U8G2_FONT_TABLE_ENTRY
#undef U8G2_DISPLAY_TABLE_ENTRY #undef U8G2_DISPLAY_TABLE_ENTRY
#define U8G2_DISPLAY_TABLE_ENTRY(function, binding) \ #define U8G2_DISPLAY_TABLE_ENTRY(function, binding) LROT_FUNCENTRY(#binding,l ## binding)
{ LSTRKEY( #binding ), LFUNCVAL( l ## binding ) }, LROT_BEGIN(lu8g2)
static const LUA_REG_TYPE lu8g2_map[] = {
U8G2_DISPLAY_TABLE_I2C U8G2_DISPLAY_TABLE_I2C
U8G2_DISPLAY_TABLE_SPI U8G2_DISPLAY_TABLE_SPI
// //
// Register fonts // Register fonts
#define U8G2_FONT_TABLE_ENTRY(font) \ #define U8G2_FONT_TABLE_ENTRY(font) LROT_LUDENTRY(font, u8g2_ ## font)
{ LSTRKEY( #font ), LUDATA( (void *)(u8g2_ ## font) ) },
U8G2_FONT_TABLE U8G2_FONT_TABLE
// //
{ LSTRKEY( "DRAW_UPPER_RIGHT" ), LNUMVAL( U8G2_DRAW_UPPER_RIGHT ) }, LROT_NUMENTRY( DRAW_UPPER_RIGHT, U8G2_DRAW_UPPER_RIGHT )
{ LSTRKEY( "DRAW_UPPER_LEFT" ), LNUMVAL( U8G2_DRAW_UPPER_LEFT ) }, LROT_NUMENTRY( DRAW_UPPER_LEFT, U8G2_DRAW_UPPER_LEFT )
{ LSTRKEY( "DRAW_LOWER_RIGHT" ), LNUMVAL( U8G2_DRAW_LOWER_RIGHT ) }, LROT_NUMENTRY( DRAW_LOWER_RIGHT, U8G2_DRAW_LOWER_RIGHT )
{ LSTRKEY( "DRAW_LOWER_LEFT" ), LNUMVAL( U8G2_DRAW_LOWER_LEFT ) }, LROT_NUMENTRY( DRAW_LOWER_LEFT, U8G2_DRAW_LOWER_LEFT )
{ LSTRKEY( "DRAW_ALL" ), LNUMVAL( U8G2_DRAW_ALL ) }, LROT_NUMENTRY( DRAW_ALL, U8G2_DRAW_ALL )
{ LSTRKEY( "R0" ), LUDATA( (void *)U8G2_R0 ) }, LROT_LUDENTRY( R0, U8G2_R0 )
{ LSTRKEY( "R1" ), LUDATA( (void *)U8G2_R1 ) }, LROT_LUDENTRY( R1, U8G2_R1 )
{ LSTRKEY( "R2" ), LUDATA( (void *)U8G2_R2 ) }, LROT_LUDENTRY( R2, U8G2_R2 )
{ LSTRKEY( "R3" ), LUDATA( (void *)U8G2_R3 ) }, LROT_LUDENTRY( R3, U8G2_R3 )
{ LSTRKEY( "MIRROR" ), LUDATA( (void *)U8G2_MIRROR ) }, LROT_LUDENTRY( MIRROR, U8G2_MIRROR )
{LNILKEY, LNILVAL} LROT_END( lu8g2, NULL, 0 )
};
int luaopen_u8g2( lua_State *L ) { int luaopen_u8g2( lua_State *L ) {
luaL_rometatable(L, "u8g2.display", (void *)lu8g2_display_map); luaL_rometatable(L, "u8g2.display", LROT_TABLEREF(lu8g2_display));
return 0; return 0;
} }
NODEMCU_MODULE(U8G2, "u8g2", lu8g2_map, luaopen_u8g2); NODEMCU_MODULE(U8G2, "u8g2", lu8g2, luaopen_u8g2);
#endif /* defined(LUA_USE_MODULES_U8G2) || defined(ESP_PLATFORM) */ #endif /* defined(LUA_USE_MODULES_U8G2) || defined(ESP_PLATFORM) */
...@@ -174,19 +174,19 @@ static int l_uart_write( lua_State* L ) ...@@ -174,19 +174,19 @@ static int l_uart_write( lua_State* L )
} }
// Module function map // Module function map
static const LUA_REG_TYPE uart_map[] = { LROT_BEGIN(uart)
{ LSTRKEY( "setup" ), LFUNCVAL( l_uart_setup ) }, LROT_FUNCENTRY( setup, l_uart_setup )
{ LSTRKEY( "getconfig" ), LFUNCVAL( l_uart_getconfig ) }, LROT_FUNCENTRY( getconfig, l_uart_getconfig )
{ LSTRKEY( "write" ), LFUNCVAL( l_uart_write ) }, LROT_FUNCENTRY( write, l_uart_write )
{ LSTRKEY( "on" ), LFUNCVAL( l_uart_on ) }, LROT_FUNCENTRY( on, l_uart_on )
{ LSTRKEY( "alt" ), LFUNCVAL( l_uart_alt ) }, LROT_FUNCENTRY( alt, l_uart_alt )
{ LSTRKEY( "STOPBITS_1" ), LNUMVAL( PLATFORM_UART_STOPBITS_1 ) }, LROT_NUMENTRY( STOPBITS_1, PLATFORM_UART_STOPBITS_1 )
{ LSTRKEY( "STOPBITS_1_5" ), LNUMVAL( PLATFORM_UART_STOPBITS_1_5 ) }, LROT_NUMENTRY( STOPBITS_1_5, PLATFORM_UART_STOPBITS_1_5 )
{ LSTRKEY( "STOPBITS_2" ), LNUMVAL( PLATFORM_UART_STOPBITS_2 ) }, LROT_NUMENTRY( STOPBITS_2, PLATFORM_UART_STOPBITS_2 )
{ LSTRKEY( "PARITY_NONE" ), LNUMVAL( PLATFORM_UART_PARITY_NONE ) }, LROT_NUMENTRY( PARITY_NONE, PLATFORM_UART_PARITY_NONE )
{ LSTRKEY( "PARITY_EVEN" ), LNUMVAL( PLATFORM_UART_PARITY_EVEN ) }, LROT_NUMENTRY( PARITY_EVEN, PLATFORM_UART_PARITY_EVEN )
{ LSTRKEY( "PARITY_ODD" ), LNUMVAL( PLATFORM_UART_PARITY_ODD ) }, LROT_NUMENTRY( PARITY_ODD, PLATFORM_UART_PARITY_ODD )
{ LNILKEY, LNILVAL } LROT_END( uart, NULL, 0 )
};
NODEMCU_MODULE(UART, "uart", uart_map, NULL); NODEMCU_MODULE(UART, "uart", uart, NULL);
...@@ -690,89 +690,87 @@ UCG_DISPLAY_TABLE ...@@ -690,89 +690,87 @@ UCG_DISPLAY_TABLE
// Module function map // Module function map
static const LUA_REG_TYPE lucg_display_map[] = LROT_BEGIN(lucg_display)
{ LROT_FUNCENTRY( begin, lucg_begin )
{ LSTRKEY( "begin" ), LFUNCVAL( lucg_begin ) }, LROT_FUNCENTRY( clearScreen, lucg_clearScreen )
{ LSTRKEY( "clearScreen" ), LFUNCVAL( lucg_clearScreen ) }, LROT_FUNCENTRY( draw90Line, lucg_draw90Line )
{ LSTRKEY( "draw90Line" ), LFUNCVAL( lucg_draw90Line ) }, LROT_FUNCENTRY( drawBox, lucg_drawBox )
{ LSTRKEY( "drawBox" ), LFUNCVAL( lucg_drawBox ) }, LROT_FUNCENTRY( drawCircle, lucg_drawCircle )
{ LSTRKEY( "drawCircle" ), LFUNCVAL( lucg_drawCircle ) }, LROT_FUNCENTRY( drawDisc, lucg_drawDisc )
{ LSTRKEY( "drawDisc" ), LFUNCVAL( lucg_drawDisc ) }, LROT_FUNCENTRY( drawFrame, lucg_drawFrame )
{ LSTRKEY( "drawFrame" ), LFUNCVAL( lucg_drawFrame ) }, LROT_FUNCENTRY( drawGlyph, lucg_drawGlyph )
{ LSTRKEY( "drawGlyph" ), LFUNCVAL( lucg_drawGlyph ) }, LROT_FUNCENTRY( drawGradientBox, lucg_drawGradientBox )
{ LSTRKEY( "drawGradientBox" ), LFUNCVAL( lucg_drawGradientBox ) }, LROT_FUNCENTRY( drawGradientLine, lucg_drawGradientLine )
{ LSTRKEY( "drawGradientLine" ), LFUNCVAL( lucg_drawGradientLine ) }, LROT_FUNCENTRY( drawHLine, lucg_drawHLine )
{ LSTRKEY( "drawHLine" ), LFUNCVAL( lucg_drawHLine ) }, LROT_FUNCENTRY( drawLine, lucg_drawLine )
{ LSTRKEY( "drawLine" ), LFUNCVAL( lucg_drawLine ) }, LROT_FUNCENTRY( drawPixel, lucg_drawPixel )
{ LSTRKEY( "drawPixel" ), LFUNCVAL( lucg_drawPixel ) }, LROT_FUNCENTRY( drawRBox, lucg_drawRBox )
{ LSTRKEY( "drawRBox" ), LFUNCVAL( lucg_drawRBox ) }, LROT_FUNCENTRY( drawRFrame, lucg_drawRFrame )
{ LSTRKEY( "drawRFrame" ), LFUNCVAL( lucg_drawRFrame ) }, LROT_FUNCENTRY( drawString, lucg_drawString )
{ LSTRKEY( "drawString" ), LFUNCVAL( lucg_drawString ) }, LROT_FUNCENTRY( drawTetragon, lucg_drawTetragon )
{ LSTRKEY( "drawTetragon" ), LFUNCVAL( lucg_drawTetragon ) }, LROT_FUNCENTRY( drawTriangle, lucg_drawTriangle )
{ LSTRKEY( "drawTriangle" ), LFUNCVAL( lucg_drawTriangle ) }, LROT_FUNCENTRY( drawVLine, lucg_drawVLine )
{ LSTRKEY( "drawVLine" ), LFUNCVAL( lucg_drawVLine ) }, LROT_FUNCENTRY( getFontAscent, lucg_getFontAscent )
{ LSTRKEY( "getFontAscent" ), LFUNCVAL( lucg_getFontAscent ) }, LROT_FUNCENTRY( getFontDescent, lucg_getFontDescent )
{ LSTRKEY( "getFontDescent" ), LFUNCVAL( lucg_getFontDescent ) }, LROT_FUNCENTRY( getHeight, lucg_getHeight )
{ LSTRKEY( "getHeight" ), LFUNCVAL( lucg_getHeight ) }, LROT_FUNCENTRY( getStrWidth, lucg_getStrWidth )
{ LSTRKEY( "getStrWidth" ), LFUNCVAL( lucg_getStrWidth ) }, LROT_FUNCENTRY( getWidth, lucg_getWidth )
{ LSTRKEY( "getWidth" ), LFUNCVAL( lucg_getWidth ) }, LROT_FUNCENTRY( print, lucg_print )
{ LSTRKEY( "print" ), LFUNCVAL( lucg_print ) }, LROT_FUNCENTRY( setClipRange, lucg_setClipRange )
{ LSTRKEY( "setClipRange" ), LFUNCVAL( lucg_setClipRange ) }, LROT_FUNCENTRY( setColor, lucg_setColor )
{ LSTRKEY( "setColor" ), LFUNCVAL( lucg_setColor ) }, LROT_FUNCENTRY( setFont, lucg_setFont )
{ LSTRKEY( "setFont" ), LFUNCVAL( lucg_setFont ) }, LROT_FUNCENTRY( setFontMode, lucg_setFontMode )
{ LSTRKEY( "setFontMode" ), LFUNCVAL( lucg_setFontMode ) }, LROT_FUNCENTRY( setFontPosBaseline, lucg_setFontPosBaseline )
{ LSTRKEY( "setFontPosBaseline" ), LFUNCVAL( lucg_setFontPosBaseline ) }, LROT_FUNCENTRY( setFontPosBottom, lucg_setFontPosBottom )
{ LSTRKEY( "setFontPosBottom" ), LFUNCVAL( lucg_setFontPosBottom ) }, LROT_FUNCENTRY( setFontPosCenter, lucg_setFontPosCenter )
{ LSTRKEY( "setFontPosCenter" ), LFUNCVAL( lucg_setFontPosCenter ) }, LROT_FUNCENTRY( setFontPosTop, lucg_setFontPosTop )
{ LSTRKEY( "setFontPosTop" ), LFUNCVAL( lucg_setFontPosTop ) }, LROT_FUNCENTRY( setMaxClipRange, lucg_setMaxClipRange )
{ LSTRKEY( "setMaxClipRange" ), LFUNCVAL( lucg_setMaxClipRange ) }, LROT_FUNCENTRY( setPrintDir, lucg_setPrintDir )
{ LSTRKEY( "setPrintDir" ), LFUNCVAL( lucg_setPrintDir ) }, LROT_FUNCENTRY( setPrintPos, lucg_setPrintPos )
{ LSTRKEY( "setPrintPos" ), LFUNCVAL( lucg_setPrintPos ) }, LROT_FUNCENTRY( setRotate90, lucg_setRotate90 )
{ LSTRKEY( "setRotate90" ), LFUNCVAL( lucg_setRotate90 ) }, LROT_FUNCENTRY( setRotate180, lucg_setRotate180 )
{ LSTRKEY( "setRotate180" ), LFUNCVAL( lucg_setRotate180 ) }, LROT_FUNCENTRY( setRotate270, lucg_setRotate270 )
{ LSTRKEY( "setRotate270" ), LFUNCVAL( lucg_setRotate270 ) }, LROT_FUNCENTRY( setScale2x2, lucg_setScale2x2 )
{ LSTRKEY( "setScale2x2" ), LFUNCVAL( lucg_setScale2x2 ) }, LROT_FUNCENTRY( undoClipRange, lucg_setMaxClipRange )
{ LSTRKEY( "undoClipRange" ), LFUNCVAL( lucg_setMaxClipRange ) }, LROT_FUNCENTRY( undoRotate, lucg_undoRotate )
{ LSTRKEY( "undoRotate" ), LFUNCVAL( lucg_undoRotate ) }, LROT_FUNCENTRY( undoScale, lucg_undoScale )
{ LSTRKEY( "undoScale" ), LFUNCVAL( lucg_undoScale ) },
LROT_FUNCENTRY( __gc, lucg_close_display )
{ LSTRKEY( "__gc" ), LFUNCVAL( lucg_close_display ) }, LROT_TABENTRY( __index, lucg_display )
{ LSTRKEY( "__index" ), LROVAL ( lucg_display_map ) }, LROT_END( lucg_display, lucg_display, 0 )
{ LNILKEY, LNILVAL }
};
LROT_BEGIN(lucg)
static const LUA_REG_TYPE lucg_map[] =
{
#undef UCG_DISPLAY_TABLE_ENTRY #undef UCG_DISPLAY_TABLE_ENTRY
#define UCG_DISPLAY_TABLE_ENTRY(binding, device, extension) { LSTRKEY( #binding ), LFUNCVAL ( l ## binding ) }, #define UCG_DISPLAY_TABLE_ENTRY(binding, device, extension) LROT_FUNCENTRY(binding,l ## binding)
UCG_DISPLAY_TABLE UCG_DISPLAY_TABLE
// Register fonts // Register fonts
#undef UCG_FONT_TABLE_ENTRY #undef UCG_FONT_TABLE_ENTRY
#define UCG_FONT_TABLE_ENTRY(font) { LSTRKEY( #font ), LUDATA( (void *)(ucg_ ## font) ) }, #define UCG_FONT_TABLE_ENTRY(font) LROT_LUDENTRY(font, ucg_ ## font )
UCG_FONT_TABLE UCG_FONT_TABLE
// Font modes // Font modes
{ LSTRKEY( "FONT_MODE_TRANSPARENT" ), LNUMVAL( UCG_FONT_MODE_TRANSPARENT ) }, LROT_NUMENTRY( FONT_MODE_TRANSPARENT, UCG_FONT_MODE_TRANSPARENT )
{ LSTRKEY( "FONT_MODE_SOLID" ), LNUMVAL( UCG_FONT_MODE_SOLID ) }, LROT_NUMENTRY( FONT_MODE_SOLID, UCG_FONT_MODE_SOLID )
// Options for circle/ disc drawing // Options for circle/ disc drawing
{ LSTRKEY( "DRAW_UPPER_RIGHT" ), LNUMVAL( UCG_DRAW_UPPER_RIGHT ) }, LROT_NUMENTRY( DRAW_UPPER_RIGHT, UCG_DRAW_UPPER_RIGHT )
{ LSTRKEY( "DRAW_UPPER_LEFT" ), LNUMVAL( UCG_DRAW_UPPER_LEFT ) }, LROT_NUMENTRY( DRAW_UPPER_LEFT, UCG_DRAW_UPPER_LEFT )
{ LSTRKEY( "DRAW_LOWER_RIGHT" ), LNUMVAL( UCG_DRAW_LOWER_RIGHT ) }, LROT_NUMENTRY( DRAW_LOWER_RIGHT, UCG_DRAW_LOWER_RIGHT )
{ LSTRKEY( "DRAW_LOWER_LEFT" ), LNUMVAL( UCG_DRAW_LOWER_LEFT ) }, LROT_NUMENTRY( DRAW_LOWER_LEFT, UCG_DRAW_LOWER_LEFT )
{ LSTRKEY( "DRAW_ALL" ), LNUMVAL( UCG_DRAW_ALL ) }, LROT_NUMENTRY( DRAW_ALL, UCG_DRAW_ALL )
LROT_TABENTRY( __metatable, lucg )
LROT_END( lucg, lucg, 0 )
{ LSTRKEY( "__metatable" ), LROVAL( lucg_map ) },
{ LNILKEY, LNILVAL }
};
int luaopen_ucg( lua_State *L ) int luaopen_ucg( lua_State *L )
{ {
luaL_rometatable(L, "ucg.display", (void *)lucg_display_map); // create metatable luaL_rometatable(L, "ucg.display", LROT_TABLEREF(lucg_display));
return 0; return 0;
} }
NODEMCU_MODULE(UCG, "ucg", lucg_map, luaopen_ucg); NODEMCU_MODULE(UCG, "ucg", lucg, luaopen_ucg);
#endif /* LUA_USE_MODULES_UCG */ #endif /* LUA_USE_MODULES_UCG */
...@@ -307,28 +307,26 @@ static int websocketclient_gc(lua_State *L) { ...@@ -307,28 +307,26 @@ static int websocketclient_gc(lua_State *L) {
return 0; return 0;
} }
static const LUA_REG_TYPE websocket_map[] = LROT_BEGIN(websocket)
{ LROT_FUNCENTRY( createClient, websocket_createClient )
{ LSTRKEY("createClient"), LFUNCVAL(websocket_createClient) }, LROT_END( websocket, NULL, 0 )
{ LNILKEY, LNILVAL }
};
LROT_BEGIN(websocketclient)
static const LUA_REG_TYPE websocketclient_map[] = LROT_FUNCENTRY( on, websocketclient_on )
{ LROT_FUNCENTRY( config, websocketclient_config )
{ LSTRKEY("on"), LFUNCVAL(websocketclient_on) }, LROT_FUNCENTRY( connect, websocketclient_connect )
{ LSTRKEY("config"), LFUNCVAL(websocketclient_config) }, LROT_FUNCENTRY( send, websocketclient_send )
{ LSTRKEY("connect"), LFUNCVAL(websocketclient_connect) }, LROT_FUNCENTRY( close, websocketclient_close )
{ LSTRKEY("send"), LFUNCVAL(websocketclient_send) }, LROT_FUNCENTRY( __gc, websocketclient_gc )
{ LSTRKEY("close"), LFUNCVAL(websocketclient_close) }, LROT_TABENTRY( __index, websocketclient )
{ LSTRKEY("__gc" ), LFUNCVAL(websocketclient_gc) }, LROT_END( websocketclient, websocketclient, LROT_MASK_GC_INDEX )
{ LSTRKEY("__index"), LROVAL(websocketclient_map) },
{ LNILKEY, LNILVAL }
};
int loadWebsocketModule(lua_State *L) { int loadWebsocketModule(lua_State *L) {
luaL_rometatable(L, METATABLE_WSCLIENT, (void *) websocketclient_map); luaL_rometatable(L, METATABLE_WSCLIENT, LROT_TABLEREF( websocketclient));
return 0; return 0;
} }
NODEMCU_MODULE(WEBSOCKET, "websocket", websocket_map, loadWebsocketModule); NODEMCU_MODULE(WEBSOCKET, "websocket", websocket, loadWebsocketModule);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment