CVSROOT: /sources/m4 Module name: m4 Branch: branch-1_4 Changes by: Eric Blake <ericb> 06/10/21 02:55:56
Index: examples/foreachq2.m4 =================================================================== RCS file: examples/foreachq2.m4 diff -N examples/foreachq2.m4 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ examples/foreachq2.m4 21 Oct 2006 02:55:56 -0000 1.1.2.1 @@ -0,0 +1,10 @@ +include(`quote.m4')dnl +divert(`-1') +# foreachq(x, `item_1, item_2, ..., item_n', stmt) +# quoted list, improved version +define(`foreachq', `pushdef(`$1')_foreachq($@)popdef(`$1')') +define(`_arg1q', ``$1'') +define(`_rest', `ifelse(`$#', `1', `', `dquote(shift($@))')') +define(`_foreachq', `ifelse(`$2', `', `', + `define(`$1', _arg1q($2))$3`'$0(`$1', _rest($2), `$3')')') +divert`'dnl
