cuelang.org/go@v0.13.0/cue/testdata/fulleval/004_field_comprehension.txtar (about) 1 #name: field comprehension 2 #evalFull 3 -- in.cue -- 4 a: { 5 for k, v in b 6 if k < "d" 7 if v > b.a { 8 "\(k)": v 9 } 10 } 11 b: { 12 a: 1 13 b: 2 14 c: 3 15 d: 4 16 } 17 c: { 18 for k, v in b 19 if k < "d" 20 if v > b.a { 21 "\(k)": v 22 } 23 } 24 -- out/def -- 25 a: { 26 b: 2 27 c: 3 28 } 29 b: { 30 a: 1 31 b: 2 32 c: 3 33 d: 4 34 } 35 c: { 36 b: 2 37 c: 3 38 } 39 -- out/export -- 40 a: { 41 b: 2 42 c: 3 43 } 44 b: { 45 a: 1 46 b: 2 47 c: 3 48 d: 4 49 } 50 c: { 51 b: 2 52 c: 3 53 } 54 -- out/yaml -- 55 a: 56 b: 2 57 c: 3 58 b: 59 a: 1 60 b: 2 61 c: 3 62 d: 4 63 c: 64 b: 2 65 c: 3 66 -- out/json -- 67 {"a":{"b":2,"c":3},"b":{"a":1,"b":2,"c":3,"d":4},"c":{"b":2,"c":3}} 68 -- out/legacy-debug -- 69 <0>{a: <1>{b: 2, c: 3}, b: <2>{a: 1, b: 2, c: 3, d: 4}, c: <3>{b: 2, c: 3}} 70 -- out/compile -- 71 --- in.cue 72 { 73 a: { 74 for k, v in 〈1;b〉 if (〈0;k〉 < "d") if (〈0;v〉 > 〈2;b〉.a) { 75 "\(〈1;k〉)": 〈1;v〉 76 } 77 } 78 b: { 79 a: 1 80 b: 2 81 c: 3 82 d: 4 83 } 84 c: { 85 for k, v in 〈1;b〉 if (〈0;k〉 < "d") if (〈0;v〉 > 〈2;b〉.a) { 86 "\(〈1;k〉)": 〈1;v〉 87 } 88 } 89 } 90 -- out/eval/stats -- 91 Leaks: 0 92 Freed: 12 93 Reused: 5 94 Allocs: 7 95 Retain: 12 96 97 Unifications: 12 98 Conjuncts: 17 99 Disjuncts: 16 100 -- out/eval -- 101 (struct){ 102 a: (struct){ 103 b: (int){ 2 } 104 c: (int){ 3 } 105 } 106 b: (struct){ 107 a: (int){ 1 } 108 b: (int){ 2 } 109 c: (int){ 3 } 110 d: (int){ 4 } 111 } 112 c: (struct){ 113 b: (int){ 2 } 114 c: (int){ 3 } 115 } 116 }