annotate tools/foreach.m4 @ 1024:63f2f1daf5d3 refine_backend_if

X_main.c works with new backend definition
author Thinker K.F. Li <thinker@codemud.net>
date Mon, 22 Nov 2010 15:38:11 +0800
parents f4b792afa74e
children
rev   line source
63
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
1 divert([-1])
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
2
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
3 define([_arg1], [$1])
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
4
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
5 define([_foreach], [ifelse([$2], [()], [],
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
6 [define([$1], _arg1$2)$3[]_foreach([$1], (shift$2), [$3])])])
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
7
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
8 define([foreach], [pushdef([$1])_foreach($@)popdef([$1])])
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
9
f4b792afa74e m4 translator
Thinker K.F. Li <thinker@branda.to>
parents:
diff changeset
10 divert[]dnl