mirror of
https://https.git.savannah.gnu.org/git/m4.git
synced 2026-01-27 01:44:29 +00:00
* examples/foreach2.m4: Use $0 rather than spelling out name. * examples/foreachq2.m4: Likewise. * examples/forloop2.m4: Likewise. * examples/hanoi.m4: Likewise. * examples/trace.m4: Likewise. * doc/m4.texinfo (Improved forloop): Document advantage of $0. (Improved foreach): Adjust dump from file. Signed-off-by: Eric Blake <ebb9@byu.net>
11 lines
360 B
Plaintext
11 lines
360 B
Plaintext
include(`quote.m4')dnl
|
|
divert(`-1')
|
|
# foreach(x, (item_1, item_2, ..., item_n), stmt)
|
|
# parenthesized list, improved version
|
|
define(`foreach', `pushdef(`$1')_$0(`$1',
|
|
(dquote(dquote_elt$2)), `$3')popdef(`$1')')
|
|
define(`_arg1', `$1')
|
|
define(`_foreach', `ifelse(`$2', `(`')', `',
|
|
`define(`$1', _arg1$2)$3`'$0(`$1', (dquote(shift$2)), `$3')')')
|
|
divert`'dnl
|