diff options
author | David Greene <greened@obbligato.org> | 2009-05-14 22:23:47 +0000 |
---|---|---|
committer | David Greene <greened@obbligato.org> | 2009-05-14 22:23:47 +0000 |
commit | beb31a51f67f651c5fa3c5094a78266d04a697a5 (patch) | |
tree | 96cd08821f86feee3e6205232374f56d1b79f168 /docs/TableGenFundamentals.html | |
parent | 4afc509b7ffe2c4ea234dfd7af5105feb21685d9 (diff) |
Implement a !foreach operator analogous to GNU make's $(foreach).
Use it on dags and lists like this:
class decls {
string name;
}
def Decls : decls;
class B<list<string> names> : A<!foreach(Decls.name, names, !strconcat(Decls.name, ", Sr."))>;
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71803 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/TableGenFundamentals.html')
-rw-r--r-- | docs/TableGenFundamentals.html | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/docs/TableGenFundamentals.html b/docs/TableGenFundamentals.html index 0186453f36..9607f9ea9e 100644 --- a/docs/TableGenFundamentals.html +++ b/docs/TableGenFundamentals.html @@ -407,6 +407,10 @@ aborts with an error. </dd> <dt><tt>!subst(a, b, c)</tt></dt> <dd>If 'a' and 'b' are of string type or are symbol references, substitute 'b' for 'a' in 'c.' This operation is analogous to $(subst) in GNU make.</dd> +<dt><tt>!foreach(a, b, c)</tt></dt> + <dd>For each member 'b' of dag or list 'a' apply operator 'c.' 'b' is a +dummy variable that should be declared as a member variable of an instantiated +class. This operation is analogous to $(foreach) in GNU make.</dd> </dl> <p>Note that all of the values have rules specifying how they convert to values |