1 char *rcs_auxlib
="$Id: auxlib.c,v 1.5 1997/04/14 15:30:03 roberto Exp $";
13 int luaI_findstring (char *name
, char *list
[])
16 for (i
=0; list
[i
]; i
++)
17 if (strcmp(list
[i
], name
) == 0)
19 return -1; /* name not found */
23 void luaL_arg_check(int cond
, int numarg
, char *extramsg
)
27 lua_getobjname(lua_stackedfunction(0), &funcname
);
31 luaL_verror("bad argument #%d to function `%s'", numarg
, funcname
);
33 luaL_verror("bad argument #%d to function `%s' (%s)",
34 numarg
, funcname
, extramsg
);
38 char *luaL_check_string (int numArg
)
40 lua_Object o
= lua_getparam(numArg
);
41 luaL_arg_check(lua_isstring(o
), numArg
, "string expected");
42 return lua_getstring(o
);
45 char *luaL_opt_string (int numArg
, char *def
)
47 return (lua_getparam(numArg
) == LUA_NOOBJECT
) ? def
:
48 luaL_check_string(numArg
);
51 double luaL_check_number (int numArg
)
53 lua_Object o
= lua_getparam(numArg
);
54 luaL_arg_check(lua_isnumber(o
), numArg
, "number expected");
55 return lua_getnumber(o
);
59 double luaL_opt_number (int numArg
, double def
)
61 return (lua_getparam(numArg
) == LUA_NOOBJECT
) ? def
:
62 luaL_check_number(numArg
);
65 void luaL_openlib (struct luaL_reg
*l
, int n
)
69 lua_register(l
[i
].name
, l
[i
].func
);
73 void luaL_verror (char *fmt
, ...)
78 vsprintf(buff
, fmt
, argp
);