1 (* Check that we properly discard skeletons when we shift subtrees *)
2 (* across lenses. The test shifts a subtree parsed with SND to one *)
3 (* that is put with FST. Since the two have different skeleton types *)
4 (* we need to ignore the skeleton that comes with it. *)
8 let array_value = store /[a-z0-9]+/ in
9 let fst = seq "values" . array_value . del /[ \t]+/ "\t" in
10 let snd = seq "values" . array_value in
11 del "(" "(" . counter "values" .
12 [ fst ] * . [ snd ] . del ")" ")"
14 let lns = [ key /[a-z]+/ . del "=" "=" . array ]
16 test lns put "var=(v1 v2)" after
17 set "var/3" "v3" = "var=(v1 v2\tv3)"