ES2 MUD LIB :: 東方故事二(ES2) 天朝帝國 mudlib 瀏覽展示
/doc/efuns/each
eeeeaaaacccchhhh((((3333)))) MMMMuuuuddddOOOOSSSS ((((5555 SSSSeeeepppp 1111999999994444)))) eeeeaaaacccchhhh((((3333))))
NNNNAAAAMMMMEEEE
each() - iterate over the (key, value) pairs in a mapping
SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
mixed *each( mapping m, int reset );
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
The (key, value) pairs in a mapping may be iterated over
using the each() efun. each() returns the (key, value)
pairs in the same order as keys() and values() do. each()
returns a null vector when the end of the mapping is
reached. The next access to each() (after receiving the
null vector) will start over at the beginning of the map.
The current position in the map always resets to the
beginning when a different object accesses the map via
each(). Given the singlethreaded nature of MudOS, this
doesn't present a problem (and in fact makes sure that an
object can't leave the current position in an in-between
state). If the optional second argument is given as 1, then
each()'s position in mapping `m' is reset to the beginning.
For example:
mixed *pair;
while ((pair = each(x)) != ({})) {
write("key = " + pair[0] + "\n");
write("value = " + pair[1] + "\n");
}
SSSSEEEEEEEE AAAALLLLSSSSOOOO
keys(3), values(3)
Page 1 (printed 3/16/95)