[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: The problem with or and false
- From: Javier Guerra <javier@...>
- Date: Thu, 30 Mar 2006 09:26:01 -0500
On Thursday 30 March 2006 9:18 am, Alexander Gladysh wrote:
> > You can define a placeholder for false...
> Unfortunately, I need to have all tables in "honest" state, so such
> joined usage would be completely transparent for their other users.
another solution with a C function... (luaTCC in this case ;-) ) it returns
the first non-nil parameter:
require "lua_tcc"
getfirst = tcc.compile ([[
#include "lua.h"
int getfirst (lua_State *L) {
int i, n = lua_gettop (L);
for (i = 1; i <= n; i++) {
if (!lua_isnil (L, i)) {
lua_settop (L, i);
return 1;
}
}
return 0;
}
]], "getfirst")
print (getfirst (nil,1,2))
==> 1
print (getfirst (nil, false,2))
==> 2
use it as:
return getfirst (A[k], B[k], C[k])
--
Javier
Attachment:
pgppz43zSNRqc.pgp
Description: PGP signature