seqlua

diff README @ 7:2cb22d01fdd0

Reverted last commit and added TODO for first argument to __call
author jbe
date Wed Aug 20 01:59:55 2014 +0200 (2014-08-20)
parents 7b05ca6ef925
children 144f0bddee2b
line diff
     1.1 --- a/README	Wed Aug 20 01:52:35 2014 +0200
     1.2 +++ b/README	Wed Aug 20 01:59:55 2014 +0200
     1.3 @@ -133,15 +133,21 @@
     1.4  
     1.5      printcsv{"a", "b", "c"}  -- prints: a,b,c
     1.6  
     1.7 -NOTE: If the index passed to ``seqlua_iterinit`` points to a value that has a
     1.8 -``__call`` metamethod, then the value at the stack position will be replaced by
     1.9 -that metamethod.
    1.10 +NOTE: ``seqlua_iterinit`` will store one extra element on the stack during
    1.11 +iteration. When ``seqlua_iternext`` returns 0, this extra element is popped
    1.12 +from the stack automatically.
    1.13  
    1.14  Additionally, ``seqlualib`` includes a function ``seqlua_iterclosure(L, idx)``,
    1.15  which converts a table at a given stack index into a function closure (stored
    1.16  on the same stack index) that iterates over the elements of the table. If the
    1.17  value at the given stack index is already a function, it leaves the value
    1.18  unchanged. If the value is convertible to a function using ``__call,`` then the
    1.19 -value is replaced by its ``__call`` metamethod.
    1.20 +value is replaced by a closure calling the ``__call`` metamethod.
    1.21  
    1.22  
    1.23 +TODO
    1.24 +----
    1.25 +
    1.26 +* pass the original value to the ``__call`` metamethod as first argument
    1.27 +
    1.28 +

Impressum / About Us