You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

115 lines
3.4 KiB

2 months ago
/******************************************************************************
(C), 2018-2099, Radkil
******************************************************************************
: lua_base.h
: 稿
: Radkil
: 2026524
:
: lua.c
:
1. : 2026524
: Radkil
:
******************************************************************************/
/*----------------------------------------------*
* *
*----------------------------------------------*/
/*----------------------------------------------*
* *
*----------------------------------------------*/
/*----------------------------------------------*
* *
*----------------------------------------------*/
/*----------------------------------------------*
* *
*----------------------------------------------*/
/*----------------------------------------------*
* *
*----------------------------------------------*/
/*----------------------------------------------*
* *
*----------------------------------------------*/
/*----------------------------------------------*
* *
*----------------------------------------------*/
#ifndef __LUA_BASE_H__
#define __LUA_BASE_H__
#ifdef __cplusplus
#if __cplusplus
extern "C"{
#endif
#endif /* __cplusplus */
/*==============================================*
* include header files *
*----------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <lua.h>
#include <lauxlib.h>
#include <lualib.h>
#include "common.h"
/*==============================================*
* constants or macros define *
*----------------------------------------------*/
#define PROMPT "> "
#define CONT_PROMPT ">> "
#define MAX_HISTORY_LINES 10
#define MAX_HISTORY_LEN 256
typedef void (*lua_output)(const char *fmt, ...);
/*==============================================*
* help system definitions *
*----------------------------------------------*/
#define MAX_HELP_ENTRIES 32
typedef struct {
const char *name;
const char *description;
} lua_help_entry_t;
2 months ago
/*==============================================*
* project-wide global variables *
*----------------------------------------------*/
extern lua_output lua_print;
/*==============================================*
* routines' or functions' implementations *
*----------------------------------------------*/
int lua_init(lua_output _lua_print);
int lua_repl(char *_pcBuffer, int _iSize, int _iEcho);
void luaprint_stdout(const char *fmt, ...);
void lua_register_help(lua_State *L, const char *name, lua_CFunction func, const char *description);
void lua_add_help_entry(const char *name, const char *description);
2 months ago
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* __cplusplus */
#endif /* __LUA_BASE_H__ */