This commit is contained in:
Roberto Ierusalimschy 2005-12-15 16:17:49 -02:00
parent ea6b1b42c7
commit 43c61fc113
1 changed files with 23 additions and 23 deletions

View File

@ -1,5 +1,5 @@
/*
** $Id: loslib.c,v 1.13 2005/09/09 18:22:46 roberto Exp roberto $
** $Id: loslib.c,v 1.14 2005/10/21 13:47:42 roberto Exp roberto $
** Standard Operating System library
** See Copyright Notice in lua.h
*/
@ -37,26 +37,26 @@ static int os_pushresult (lua_State *L, int i, const char *filename) {
}
static int io_execute (lua_State *L) {
static int os_execute (lua_State *L) {
lua_pushinteger(L, system(luaL_optstring(L, 1, NULL)));
return 1;
}
static int io_remove (lua_State *L) {
static int os_remove (lua_State *L) {
const char *filename = luaL_checkstring(L, 1);
return os_pushresult(L, remove(filename) == 0, filename);
}
static int io_rename (lua_State *L) {
static int os_rename (lua_State *L) {
const char *fromname = luaL_checkstring(L, 1);
const char *toname = luaL_checkstring(L, 2);
return os_pushresult(L, rename(fromname, toname) == 0, fromname);
}
static int io_tmpname (lua_State *L) {
static int os_tmpname (lua_State *L) {
char buff[LUA_TMPNAMBUFSIZE];
int err;
lua_tmpnam(buff, err);
@ -67,13 +67,13 @@ static int io_tmpname (lua_State *L) {
}
static int io_getenv (lua_State *L) {
static int os_getenv (lua_State *L) {
lua_pushstring(L, getenv(luaL_checkstring(L, 1))); /* if NULL push nil */
return 1;
}
static int io_clock (lua_State *L) {
static int os_clock (lua_State *L) {
lua_pushnumber(L, ((lua_Number)clock())/(lua_Number)CLOCKS_PER_SEC);
return 1;
}
@ -123,7 +123,7 @@ static int getfield (lua_State *L, const char *key, int d) {
}
static int io_date (lua_State *L) {
static int os_date (lua_State *L) {
const char *s = luaL_optstring(L, 1, "%c");
time_t t = lua_isnoneornil(L, 2) ? time(NULL) :
(time_t)luaL_checknumber(L, 2);
@ -159,7 +159,7 @@ static int io_date (lua_State *L) {
}
static int io_time (lua_State *L) {
static int os_time (lua_State *L) {
time_t t;
if (lua_isnoneornil(L, 1)) /* called without args? */
t = time(NULL); /* get current time */
@ -184,7 +184,7 @@ static int io_time (lua_State *L) {
}
static int io_difftime (lua_State *L) {
static int os_difftime (lua_State *L) {
lua_pushnumber(L, difftime((time_t)(luaL_checknumber(L, 1)),
(time_t)(luaL_optnumber(L, 2, 0))));
return 1;
@ -193,7 +193,7 @@ static int io_difftime (lua_State *L) {
/* }====================================================== */
static int io_setloc (lua_State *L) {
static int os_setlocale (lua_State *L) {
static const int cat[] = {LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY,
LC_NUMERIC, LC_TIME};
static const char *const catnames[] = {"all", "collate", "ctype", "monetary",
@ -206,23 +206,23 @@ static int io_setloc (lua_State *L) {
}
static int io_exit (lua_State *L) {
static int os_exit (lua_State *L) {
exit(luaL_optint(L, 1, EXIT_SUCCESS));
return 0; /* to avoid warnings */
}
static const luaL_Reg syslib[] = {
{"clock", io_clock},
{"date", io_date},
{"difftime", io_difftime},
{"execute", io_execute},
{"exit", io_exit},
{"getenv", io_getenv},
{"remove", io_remove},
{"rename", io_rename},
{"setlocale", io_setloc},
{"time", io_time},
{"tmpname", io_tmpname},
{"clock", os_clock},
{"date", os_date},
{"difftime", os_difftime},
{"execute", os_execute},
{"exit", os_exit},
{"getenv", os_getenv},
{"remove", os_remove},
{"rename", os_rename},
{"setlocale", os_setlocale},
{"time", os_time},
{"tmpname", os_tmpname},
{NULL, NULL}
};