cuelang.org/go@v0.10.1/cue/testdata/eval/issue494.txtar (about) 1 -- in.cue -- 2 _Q: [{pos: 0}, {pos: 1}] 3 4 a: [rn=string]: _Q[0:len(a[rn])] 5 a: ben: [{}] 6 7 b: [rn=string]: _Q[0:1] 8 b: ben: [{}] 9 10 c: [rn=string]: [...{l: len(a[rn])}] 11 c: ben: [{}] 12 13 #d: [rn=string]: [...{pos: uint}] & _Q[0:len(#d[rn])] 14 #d: ben: [{}] 15 16 d: #d 17 -- out/eval/stats -- 18 Leaks: 0 19 Freed: 26 20 Reused: 21 21 Allocs: 5 22 Retain: 0 23 24 Unifications: 26 25 Conjuncts: 56 26 Disjuncts: 28 27 -- out/eval -- 28 (struct){ 29 _Q: (#list){ 30 0: (struct){ 31 pos: (int){ 0 } 32 } 33 1: (struct){ 34 pos: (int){ 1 } 35 } 36 } 37 a: (struct){ 38 ben: (#list){ 39 0: (struct){ 40 pos: (int){ 0 } 41 } 42 } 43 } 44 b: (struct){ 45 ben: (#list){ 46 0: (struct){ 47 pos: (int){ 0 } 48 } 49 } 50 } 51 c: (struct){ 52 ben: (#list){ 53 0: (struct){ 54 l: (int){ 1 } 55 } 56 } 57 } 58 #d: (#struct){ 59 ben: (#list){ 60 0: (#struct){ 61 pos: (int){ 0 } 62 } 63 } 64 } 65 d: (#struct){ 66 ben: (#list){ 67 0: (#struct){ 68 pos: (int){ 0 } 69 } 70 } 71 } 72 } 73 -- out/compile -- 74 --- in.cue 75 { 76 _Q: [ 77 { 78 pos: 0 79 }, 80 { 81 pos: 1 82 }, 83 ] 84 a: { 85 [string]: 〈1;_Q〉[0:len(〈1;a〉[〈0;-〉])] 86 } 87 a: { 88 ben: [ 89 {}, 90 ] 91 } 92 b: { 93 [string]: 〈1;_Q〉[0:1] 94 } 95 b: { 96 ben: [ 97 {}, 98 ] 99 } 100 c: { 101 [string]: [ 102 ...{ 103 l: len(〈3;a〉[〈2;-〉]) 104 }, 105 ] 106 } 107 c: { 108 ben: [ 109 {}, 110 ] 111 } 112 #d: { 113 [string]: ([ 114 ...{ 115 pos: &(int, >=0) 116 }, 117 ] & 〈1;_Q〉[0:len(〈1;#d〉[〈0;-〉])]) 118 } 119 #d: { 120 ben: [ 121 {}, 122 ] 123 } 124 d: 〈0;#d〉 125 }