cuelang.org/go@v0.13.0/cue/testdata/resolve/038_incomplete_comprehensions.txtar (about) 1 #name: incomplete comprehensions 2 #evalPartial 3 -- in.cue -- 4 A: { 5 for v in src { 6 "\(v)": v 7 } 8 src: _ 9 if true { 10 baz: "baz" 11 } 12 } 13 B: A & { 14 src: ["foo", "bar"] 15 } 16 -- out/def -- 17 A: { 18 src: _ 19 baz: "baz" 20 for v in src { 21 "\(v)": v 22 } 23 } 24 B: A & { 25 src: ["foo", "bar"] 26 } 27 -- out/legacy-debug -- 28 <0>{A: <1>{src: _, baz: "baz" <2>for _, v in <3>.src yield <4>{""+<2>.v+"": <2>.v}}, B: <5>{src: ["foo","bar"], baz: "baz", foo: "foo", bar: "bar"}} 29 -- out/compile -- 30 --- in.cue 31 { 32 A: { 33 for _, v in 〈0;src〉 { 34 "\(〈1;v〉)": 〈1;v〉 35 } 36 src: _ 37 if true { 38 baz: "baz" 39 } 40 } 41 B: (〈0;A〉 & { 42 src: [ 43 "foo", 44 "bar", 45 ] 46 }) 47 } 48 -- out/eval/stats -- 49 Leaks: 0 50 Freed: 11 51 Reused: 6 52 Allocs: 5 53 Retain: 9 54 55 Unifications: 11 56 Conjuncts: 16 57 Disjuncts: 16 58 -- out/eval -- 59 (struct){ 60 A: (_|_){ 61 // [incomplete] A: cannot range over src (incomplete type _): 62 // ./in.cue:2:11 63 src: (_){ _ } 64 baz: (string){ "baz" } 65 } 66 B: (struct){ 67 src: (#list){ 68 0: (string){ "foo" } 69 1: (string){ "bar" } 70 } 71 baz: (string){ "baz" } 72 foo: (string){ "foo" } 73 bar: (string){ "bar" } 74 } 75 }