Difference between revisions of "Next"
From GiderosMobile
|  (removed language stuff) | |||
| Line 4: | Line 4: | ||
| === Description === | === Description === | ||
| − | Allows a program to traverse all fields of a table | + | Allows a program to traverse all fields of a table. | 
| − | |||
| − | |||
| − | |||
| − | |||
| <source lang="lua"> | <source lang="lua"> | ||
| next(table,index) | next(table,index) | ||
| </source> | </source> | ||
| + | |||
| + | Its first argument is a table and its second argument is an index in this table. ''next'' returns the next index of the table and its associated value. | ||
| + | |||
| + | *when called with nil as its second argument, ''next'' returns an initial index and its associated value | ||
| + | *when called with the last index, or with nil in an empty table, ''next'' returns nil | ||
| + | *if the second argument is absent, then it is interpreted as nil. In particular, you can use ''next''(t) to check whether a table is empty. | ||
| + | |||
| + |  The order in which the indices are enumerated is not specified, even for numeric indices. To traverse a table in numeric order, use a numerical for or the [[ipairs]] function. | ||
| + | |||
| + |  The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table. You may however modify existing fields, in particular, you may clear existing fields. | ||
| === Parameters === | === Parameters === | ||
Revision as of 22:12, 13 May 2022
Available since: Gideros 2011.6
Class: (global)
Description
Allows a program to traverse all fields of a table.
next(table,index)
Its first argument is a table and its second argument is an index in this table. next returns the next index of the table and its associated value.
- when called with nil as its second argument, next returns an initial index and its associated value
- when called with the last index, or with nil in an empty table, next returns nil
- if the second argument is absent, then it is interpreted as nil. In particular, you can use next(t) to check whether a table is empty.
The order in which the indices are enumerated is not specified, even for numeric indices. To traverse a table in numeric order, use a numerical for or the ipairs function.
The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table. You may however modify existing fields, in particular, you may clear existing fields.
Parameters
table: (table) table to traverse
index: (number) previous table index optional
