[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: RE: '__iter', yet again!
- From: "John Hind" <john.hind@...>
- Date: Wed, 16 Dec 2009 21:44:40 -0000
No, it would be a table pretending to be a collection (or, we might say, a
table pretending to be a table!).
The simplest implementation would be:
setmetatable(obj, {__iter = pairs;})
So whatever you want to call 'pairs', (factory, generator, whatever) the
metamethod is called the same! (But I accept that maybe '__iter' is the
wrong key for it.)
-----Original Message-----
From: lua-bounces@bazar2.conectiva.com.br
[mailto:lua-bounces@bazar2.conectiva.com.br] On Behalf Of Mark Hamburg
Sent: 16 December 2009 21:21
To: Lua list
Subject: Re: '__iter', yet again!
The argument against:
It changes the semantics of the generic for loop from taking an iterator to
taking an iterator or an iterator factory.
The factory is distinctly one step removed from an iterator and hence is not
analogous to a table pretending to be a function (__call) or a table
pretending to be a number (__add).
Mark
- References:
- Re: '__iter', yet again!, Jerome Vuarand
- Re: '__iter', yet again!, Luiz Henrique de Figueiredo
- Re: '__iter', yet again!, steve donovan
- Re: '__iter', yet again!, Javier Guerra
- Re: '__iter', yet again!, Mark Hamburg
- Re: '__iter', yet again!, Cosmin Apreutesei
- Re: '__iter', yet again!, Petite Abeille
- Re: '__iter', yet again!, Cosmin Apreutesei
- Re: '__iter', yet again!, Petite Abeille
- Re: '__iter', yet again!, Mark Hamburg