1 | /* see copyright notice in squirrel.h */ |
2 | #ifndef _SQSTD_STRING_H_ |
3 | #define _SQSTD_STRING_H_ |
4 | |
5 | #ifdef __cplusplus |
6 | extern "C" { |
7 | #endif |
8 | |
9 | typedef unsigned int SQRexBool; |
10 | typedef struct SQRex SQRex; |
11 | |
12 | typedef struct { |
13 | const SQChar *begin; |
14 | SQInteger len; |
15 | } SQRexMatch; |
16 | |
17 | SQUIRREL_API SQRex *sqstd_rex_compile(const SQChar *pattern,const SQChar **error); |
18 | SQUIRREL_API void sqstd_rex_free(SQRex *exp); |
19 | SQUIRREL_API SQBool sqstd_rex_match(SQRex* exp,const SQChar* text); |
20 | SQUIRREL_API SQBool sqstd_rex_search(SQRex* exp,const SQChar* text, const SQChar** out_begin, const SQChar** out_end); |
21 | SQUIRREL_API SQBool sqstd_rex_searchrange(SQRex* exp,const SQChar* text_begin,const SQChar* text_end,const SQChar** out_begin, const SQChar** out_end); |
22 | SQUIRREL_API SQInteger sqstd_rex_getsubexpcount(SQRex* exp); |
23 | SQUIRREL_API SQBool sqstd_rex_getsubexp(SQRex* exp, SQInteger n, SQRexMatch *subexp); |
24 | |
25 | SQUIRREL_API SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen,SQChar **output); |
26 | |
27 | SQUIRREL_API void sqstd_pushstringf(HSQUIRRELVM v,const SQChar *s,...); |
28 | |
29 | SQUIRREL_API SQRESULT sqstd_register_stringlib(HSQUIRRELVM v); |
30 | |
31 | #ifdef __cplusplus |
32 | } /*extern "C"*/ |
33 | #endif |
34 | |
35 | #endif /*_SQSTD_STRING_H_*/ |
36 | |