'table.maxn' deprecated

This commit is contained in:
Roberto Ierusalimschy 2009-11-26 15:35:13 -02:00
parent 9107dd115c
commit 93695db903
2 changed files with 16 additions and 6 deletions

View File

@ -1,5 +1,5 @@
/*
** $Id: ltablib.c,v 1.47 2009/06/17 17:53:50 roberto Exp roberto $
** $Id: ltablib.c,v 1.48 2009/11/24 12:05:44 roberto Exp roberto $
** Library for Table Manipulation
** See Copyright Notice in lua.h
*/
@ -63,6 +63,7 @@ static int foreach (lua_State *L) {
}
#if defined(LUA_COMPAT_MAXN)
static int maxn (lua_State *L) {
lua_Number max = 0;
luaL_checktype(L, 1, LUA_TTABLE);
@ -77,7 +78,11 @@ static int maxn (lua_State *L) {
lua_pushnumber(L, max);
return 1;
}
#else
static int maxn (lua_State *L) {
return luaL_error(L, "function 'maxn' is deprecated");
}
#endif
static int getn (lua_State *L) {
lua_pushinteger(L, aux_getn(L, 1));

View File

@ -1,5 +1,5 @@
/*
** $Id: luaconf.h,v 1.117 2009/11/26 11:39:20 roberto Exp roberto $
** $Id: luaconf.h,v 1.118 2009/11/26 16:49:28 roberto Exp roberto $
** Configuration file for Lua
** See Copyright Notice in lua.h
*/
@ -336,9 +336,8 @@
/*
@@ LUA_COMPAT_FENV controls the presence of functions 'setfenv/getfenv'.
** CHANGE it (undefine it) if as soon as you rewrite your code to
** avoid using those functions. (You can replace them with lexical
** environments, 'loadin', or the debug library.)
** CHANGE it (define it) if you need these functions. (You can replace
** them with lexical environments, 'loadin', or the debug library.)
*/
/* #define LUA_COMPAT_FENV */
@ -349,6 +348,12 @@
*/
#define LUA_COMPAT_LOG10
/*
@@ LUA_COMPAT_MAXN defines the function 'maxn' in the table library.
** CHANGE it (define it) if you need that function.
*/
/* #define LUA_COMPAT_MAXN */
/*
@@ LUA_COMPAT_API includes some macros and functions that supply some
@* compatibility with previous versions.