diff options
Diffstat (limited to 'stone_soup/crawl-ref/source/clua.h')
-rw-r--r-- | stone_soup/crawl-ref/source/clua.h | 122 |
1 files changed, 0 insertions, 122 deletions
diff --git a/stone_soup/crawl-ref/source/clua.h b/stone_soup/crawl-ref/source/clua.h deleted file mode 100644 index 88f0f45cc0..0000000000 --- a/stone_soup/crawl-ref/source/clua.h +++ /dev/null @@ -1,122 +0,0 @@ -#ifndef __CLUA_H__ -#define __CLUA_H__ - -#include "AppHdr.h" - -#ifdef CLUA_BINDINGS - -extern "C" { -#include <lua.h> -#include <lauxlib.h> -#include <lualib.h> -} - -#include <cstdio> -#include <cstdarg> -#include <string> -#include <set> - -#include "libutil.h" -#include "externs.h" - -class CLua -{ -public: - CLua(); - ~CLua(); - - lua_State *state(); - - operator lua_State * () - { - return state(); - } - - void save(const char *filename); - - void setglobal(const char *name); - void getglobal(const char *name); - - // Assigns the value on top of the stack to a unique name in the registry - // and returns the name. - std::string setuniqregistry(); - - void setregistry(const char *name); - void getregistry(const char *name); - - int execstring(const char *str, const char *context = "init.txt"); - int execfile(const char *filename); - - bool callbooleanfn(bool defval, const char *fn, const char *params, ...); - bool callfn(const char *fn, int nargs, int nret = 1); - bool callfn(const char *fn, const char *params, ...); - void fnreturns(const char *params, ...); - bool runhook(const char *hook, const char *params, ...); - - static int file_write(lua_State *ls); - - std::string error; -private: - lua_State *_state; - typedef std::set<std::string> sfset; - sfset sourced_files; - unsigned long uniqindex; - - void init_lua(); - void set_error(int err, lua_State *ls = NULL); - void load_cmacro(); - void load_chooks(); - - void vfnreturns(const char *par, va_list va); - - bool proc_returns(const char *par) const; - - bool calltopfn(lua_State *ls, const char *format, va_list args, - int retc = -1, va_list *fnr = NULL); - - int push_args(lua_State *ls, const char *format, va_list args, - va_list *cpto = NULL); - int return_count(lua_State *ls, const char *format); - - struct CLuaSave - { - const char *filename; - FILE *handle; - - FILE *get_file(); - }; -}; - -class lua_text_pattern : public base_pattern -{ -public: - lua_text_pattern(const std::string &pattern); - ~lua_text_pattern(); - - bool valid() const; - bool matches(const std::string &s) const; - - static bool is_lua_pattern(const std::string &s); - -private: - bool translated; - bool isvalid; - std::string pattern; - std::string lua_fn_name; - - static unsigned long lfndx; - - bool translate() const; - void pre_pattern(std::string &pat, std::string &fn) const; - void post_pattern(std::string &pat, std::string &fn) const; - - static std::string new_fn_name(); -}; - -extern CLua clua; - -void lua_set_exclusive_item(const item_def *item = NULL); - -#endif // CLUA_BINDINGS - -#endif |