VM now resolves lush functions via luaH_getshortstr through interned TString pointers, so wrapping lush.command = my_wrapper is transparently picked up. The lush table no longer has integer-keyed duplicates.
32 lines
689 B
C
32 lines
689 B
C
/*
|
|
** $Id: lcmd.h $
|
|
** Command execution for backtick syntax
|
|
** See Copyright Notice in lua.h
|
|
*/
|
|
|
|
#ifndef lcmd_h
|
|
#define lcmd_h
|
|
|
|
#include "lua.h"
|
|
#include "lobject.h"
|
|
|
|
/* OP_LUSH sub-operation indices (B operand selects which function) */
|
|
#define LUSH_OP_COMMAND 0
|
|
#define LUSH_OP_INTERACTIVE 1
|
|
#define LUSH_OP_GETENV 2
|
|
#define LUSH_OP_SETENV 3
|
|
#define LUSH_OP_SUBCMD 4
|
|
#define LUSH_OP_COUNT 5
|
|
|
|
int lushCmd_command (lua_State *L);
|
|
int lushCmd_interactive (lua_State *L);
|
|
int lushCmd_getenv (lua_State *L);
|
|
int lushCmd_setenv (lua_State *L);
|
|
int lushCmd_subcmd (lua_State *L);
|
|
|
|
extern TString *lushname[];
|
|
|
|
LUAMOD_API int luaopen_lush (lua_State *L);
|
|
|
|
#endif
|