Oniguruma binding: add function internal_test (not to be documented).

This commit is contained in:
Shmuel Zeigerman
2018-07-16 11:22:38 +03:00
parent 6511dc6549
commit 1cdc7f6cb7
2 changed files with 31 additions and 0 deletions
+21
View File
@@ -319,6 +319,26 @@ static int LOnig_version (lua_State *L) {
return 1;
}
static int LOnig_internal_test (lua_State *L) {
unsigned int i;
for (i=1; i<sizeof(Encodings)/sizeof(Encodings[0]); i++) {
if (fcmp(&Encodings[i-1], &Encodings[i]) >= 0) {
lua_pushboolean(L, 0);
lua_pushstring(L, "Array 'Encodings' is not properly sorted.");
return 2;
}
}
for (i=1; i<sizeof(Syntaxes)/sizeof(Syntaxes[0]); i++) {
if (fcmp(&Syntaxes[i-1], &Syntaxes[i]) >= 0) {
lua_pushboolean(L, 0);
lua_pushstring(L, "Array 'Syntaxes' is not properly sorted.");
return 2;
}
}
lua_pushboolean(L, 1);
return 1;
}
static const luaL_Reg r_methods[] = {
{ "exec", algm_exec },
{ "tfind", algm_tfind }, /* old name: match */
@@ -341,6 +361,7 @@ static const luaL_Reg r_functions[] = {
{ "flags", LOnig_get_flags },
{ "version", LOnig_version },
{ "setdefaultsyntax", LOnig_setdefaultsyntax },
{ "internal_test", LOnig_internal_test },
{ NULL, NULL }
};
+10
View File
@@ -110,6 +110,15 @@ local function set_f_split (lib, flg)
}
end
local function set_f_internal_test (lib, flg)
return {
Name = "Function internal_test",
Func = lib.internal_test,
--{ params results }
{ {""}, {true} },
}
end
local function set_m_exec (lib, flg)
return {
Name = "Method exec",
@@ -151,6 +160,7 @@ return function (libname)
local lib = require (libname)
local flags = lib.flags ()
local sets = {
set_f_internal_test (lib, flags),
set_f_match (lib, flags),
set_f_find (lib, flags),
set_f_gmatch (lib, flags),