Wie kann ich einen Hash der Hashes in TCL erstellen und durchlaufen?Wie kann ich einen Hash der Hashes in TCL erstellen und durchlaufen?
Wenn ich Daten wie:
foo = {
a => {
aa => { aa1 aa2 aa3 }
ab => { ab1 ab2 ab3 }
ac => { ac1 ac2 ac3 }
}
b => {
ba => { ba1 ba2 ba3 }
bb => { bb1 bb2 bb3 }
bc => { bc1 bc2 bc3 }
}
c => {
ca => { ca1 ca2 ca3 }
cb => { cb1 cb2 cb3 }
cc => { cc1 cc2 cc3 }
}
}
Wie erstelle ich eine solche Hash zu einem Zeitpunkt ein Endknoten-Datenelement eingefügt wird. Etwas wie:
lappend foo (a) (ab) "ab1"
Dann wie iterieren ich alle Datenelemente über? wie:
foreach key in foo {
foreach sub_key in foo($key) {
foreach elem in foo($key)($sub_key) {
puts "foo\($key\)\($sub_key\) is $elem"
}
}
}
Edit: Leider habe ich keinen Zugriff auf die neuere 'dict' konstruieren.
Ich teile meine Antwort auf die nicht-dict-Lösung zu markieren. –