[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: LuaMotif and Callbacks
- From: Miles Bader <miles@...>
- Date: Sat, 7 Apr 2012 18:27:33 +0900
2012年4月7日17:43 Marc Balmer <marc@msys.ch>:
>> Why can't you just make the callback a closure, and reference "data"
>> directly from it (without making it a parameter)?
>
> I am using it in a loop, e.g. like this:
...
> activateCallback = Callback {
> item[2], -- the function
> item[3] -- data to be passed
> }
...
> So I think a closure would not work here?
Not sure why not (though maybe I misunderstand your problem).
A closure captures bindings, and Lua's for loop creates new bindings
for the loop variables on each entry into the loop body.
So a closure like:
activeCallback = function () item[2] (item[3]) end
should do the right thing.
-miles
--
Cat is power. Cat is peace.