|
|
|
|
/*********************************************************************
|
|
|
|
|
*<EFBFBD>ļ<EFBFBD>˵<EFBFBD><EFBFBD>: <EFBFBD>ű<EFBFBD>ģ<EFBFBD>鹦<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>
|
|
|
|
|
*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 37
|
|
|
|
|
*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 2018/11/09
|
|
|
|
|
*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־: 2018/11/09 logos <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
2018/12/12 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>if/elseif/else <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
***********************************************************************/
|
|
|
|
|
#pragma once
|
|
|
|
|
#ifndef _DLL_INCLUDE_JS_H
|
|
|
|
|
#define _DLL_INCLUDE_JS_H
|
|
|
|
|
|
|
|
|
|
#ifndef EXPORT_C
|
|
|
|
|
#define EXPORT_C extern "C"
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifndef WINAPI
|
|
|
|
|
#define WINAPI __stdcall
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/*֧<>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>ȼ<EFBFBD>,Խ<><D4BD>ǰԽ<C7B0><D4BD><EFBFBD><EFBFBD>
|
|
|
|
|
1. ! - ++ -- ~ //ǰ<><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
2. * / % //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
3. + - //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
4. << >> //<2F><>λ<EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
5. < <= > >= //<2F><EFBFBD><DFBC>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
6. == != //<2F><EFBFBD><DFBC>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
7. & //<2F><>λ<EFBFBD><CEBB>
|
|
|
|
|
8. ^ //<2F><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
|
|
|
|
|
9. | //<2F><>λ<EFBFBD><CEBB>
|
|
|
|
|
10. && //<2F><EFBFBD><DFBC><EFBFBD>
|
|
|
|
|
11. || //<2F><EFBFBD><DFBC><EFBFBD>
|
|
|
|
|
12. = += -= *= /= //<2F><>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
class ijres
|
|
|
|
|
{//<2F>ű<EFBFBD><C5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
public:
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD>ͷŶ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: NULL
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS: <EFBFBD><EFBFBD>script_calculate/script_calculate2
|
|
|
|
|
<EFBFBD>ӿڷ<EFBFBD><EFBFBD>صĶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ô˽ӿ<EFBFBD><EFBFBD>ͷ<EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
virtual void free() = 0;
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: NULL
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>0str 1int 2double
|
|
|
|
|
******************************************************/
|
|
|
|
|
virtual int type() = 0;
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: NULL
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
virtual int geti() = 0; //str<74><72><EFBFBD><EFBFBD>0 double<6C><65><EFBFBD><EFBFBD>int
|
|
|
|
|
virtual double getd() = 0; //str<74><72><EFBFBD><EFBFBD>0
|
|
|
|
|
virtual const char* gets() = 0; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊint/double <20><><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>ٷ<EFBFBD><D9B7><EFBFBD>
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: val int/double/string
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: NULL
|
|
|
|
|
******************************************************/
|
|
|
|
|
virtual void set(int val) = 0;
|
|
|
|
|
virtual void set(double val) = 0;
|
|
|
|
|
virtual void set(const char* val) = 0;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
EXPORT_C void WINAPI ijres_free(ijres* p);
|
|
|
|
|
EXPORT_C int WINAPI ijres_type(ijres* p);
|
|
|
|
|
EXPORT_C int WINAPI ijres_geti(ijres* p);
|
|
|
|
|
EXPORT_C double WINAPI ijres_getd(ijres* p);
|
|
|
|
|
EXPORT_C int WINAPI ijres_gets(ijres* p, char* val);
|
|
|
|
|
EXPORT_C void WINAPI ijres_seti(ijres* p, int val);
|
|
|
|
|
EXPORT_C void WINAPI ijres_setd(ijres* p, double val);
|
|
|
|
|
EXPORT_C void WINAPI ijres_sets(ijres* p, const char* val);
|
|
|
|
|
|
|
|
|
|
typedef ijres* pjres;
|
|
|
|
|
typedef struct jstack* pstack; //<2F>ű<EFBFBD><C5B1><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//p <20>ű<EFBFBD><C5B1><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD>
|
|
|
|
|
//r <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7>ؽ<EFBFBD><D8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//err <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//lparam <20><><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD>
|
|
|
|
|
//btest 1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> or 0ִ<30><D6B4>
|
|
|
|
|
//return: <20><><EFBFBD><EFBFBD>ִ<EFBFBD>гɹ<D0B3><C9B9><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʧ<EFBFBD>ܷ<EFBFBD><DCB7>ش<EFBFBD><D8B4><EFBFBD><EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ű<EFBFBD>ִ<EFBFBD>л<EFBFBD>ʧ<EFBFBD><CAA7>
|
|
|
|
|
//PS: btestΪ1ʱ<31><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
typedef int (WINAPI *jsfun)(pstack p, pjres r, char* err, int btest);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>ģ<EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: NULL
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_init();
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD>ͷŽű<EFBFBD>ģ<EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: NULL
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_deinit();
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: NULL
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_reload();
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>ģ<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*Intput: pszname <EFBFBD>ű<EFBFBD><EFBFBD>еij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <32<EFBFBD>ֽ<EFBFBD>
|
|
|
|
|
val <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڽű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰע<EFBFBD>ᣬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᱨ<EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_reg_const_int(const char* pszname, int val);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>ģ<EFBFBD><EFBFBD>ע<EFBFBD>ḡ<EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*Intput: pszname <EFBFBD>ű<EFBFBD><EFBFBD>еij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <32<EFBFBD>ֽ<EFBFBD>
|
|
|
|
|
val <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڽű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰע<EFBFBD>ᣬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᱨ<EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_reg_const_double(const char* pszname, double val);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>ģ<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*Intput: pszname <EFBFBD>ű<EFBFBD><EFBFBD>еij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <32<EFBFBD>ֽ<EFBFBD>
|
|
|
|
|
val <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڽű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰע<EFBFBD>ᣬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᱨ<EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_reg_const_string(const char* pszname, const char* val);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>ģ<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD>庯<EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: pszname <EFBFBD>ű<EFBFBD><EFBFBD>еĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <32<EFBFBD>ֽ<EFBFBD>
|
|
|
|
|
f <EFBFBD><EFBFBD>Ӧ<EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڽű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰע<EFBFBD>ᣬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᱨ<EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_reg_fun(const char* pszname, jsfun f);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: ִ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľű<EFBFBD>
|
|
|
|
|
*Intput: pszcmd <EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
err <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_run(const char* pszcmd, char* err = 0);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؽű<EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: pszcmd <EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
err <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>NULL
|
|
|
|
|
*PS:<EFBFBD><EFBFBD><EFBFBD>ô˽ӿ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD>庯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C pstack WINAPI script_compile(const char* pszcmd, char* err = 0);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD>ͷ<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD>ջ
|
|
|
|
|
*Intput: p <EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>script_compile<EFBFBD>ӿڷ<EFBFBD><EFBFBD>ص<EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_free(pstack p);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: ִ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: p <EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
err <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_execute(pstack p, char* err = 0);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD>ջֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><EFBFBD><EFBFBD> -- ֧<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: p <EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
err <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pjres<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>NULL
|
|
|
|
|
*PS:<EFBFBD>˽ӿ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>νű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>νű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᷵<EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
<EFBFBD><EFBFBD>: a+1 -- ok
|
|
|
|
|
a+b*4 -- ok
|
|
|
|
|
a+b,a-1 -- error
|
|
|
|
|
a+b a-1 -- error
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C pjres WINAPI script_calculate(pstack p, char* err = 0);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><EFBFBD><EFBFBD> -- ֧<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: p <EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬ִ<EFBFBD><EFBFBD>һ<EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>ζ<EFBFBD>ջ
|
|
|
|
|
err <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pjres<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>NULL
|
|
|
|
|
*PS:<EFBFBD>˽ӿ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>νű<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
<EFBFBD><EFBFBD>: a+1 -- ok p=NULL
|
|
|
|
|
a+b*4 -- ok p=NULL
|
|
|
|
|
a+b,a-1 -- ok pָ<EFBFBD><EFBFBD>(a-1)
|
|
|
|
|
a+b a-1 -- ok pָ<EFBFBD><EFBFBD>(a-1)
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C pjres WINAPI script_calculate2(pstack* p, char* err = 0);
|
|
|
|
|
|
|
|
|
|
/****************************************************
|
|
|
|
|
*Function: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><EFBFBD><EFBFBD> -- ֧<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Intput: p <EFBFBD><EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬ִ<EFBFBD><EFBFBD>һ<EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>ζ<EFBFBD>ջ
|
|
|
|
|
r <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
err <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*Output: NULL
|
|
|
|
|
*Return: <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*PS:<EFBFBD><EFBFBD>script_calculate2<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>£<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>pjres<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>ͷ<EFBFBD>,һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
******************************************************/
|
|
|
|
|
EXPORT_C int WINAPI script_calculate3(pstack* p, pjres r, char* err = 0);
|
|
|
|
|
|
|
|
|
|
#endif //<2F><>ֹ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD>
|