Posted to tcl by mr_calvin at Tue Aug 01 12:43:45 GMT 2017view raw
- proc spunk {l} {
- set flds [dict create]
- foreach {f v} $l {
- if {[llength $v]==1} {
- dict lappend flds $f $v
- } else {
- dict lappend flds $f {*}$v
- }
- }
- return $flds
- }
- dict get [spunk {-a {"abc"} -x 1 -z 3 -a {2 3}}] -a; # to-be: {"abc"} 2 3; ok
- set x {-a {"abc"} -x 1 -z 3}
- expr {[dict get [spunk {-a {"abc"} -x 1 -z 3}] -a] eq [dict get $x -a]}; # not OK: "abc" vs. {"abc"}