github.com/joomcode/cue@v0.4.4-0.20221111115225-539fe3512047/cue/testdata/cycle/expression.txtar (about) 1 -- in.cue -- 2 t1: a: { 3 a1: a0 + 2 4 b1: a1 - 2 5 a0: X 6 X: b1 7 X: 5.0 8 } 9 10 t1: b: { 11 X: 5.0 12 a1: a0 + 2 13 b1: a1 - 2 14 a0: X 15 X: b1 16 } 17 18 t1: c: { 19 a1: a0 + 2 20 b1: a1 - 2 21 X: 5.0 22 a0: X 23 X: b1 24 } 25 26 t1: c: { 27 b1: a1 - 2 28 a1: a0 + 2 29 X: 5.0 30 a0: X 31 X: b1 32 } 33 34 t1: c: { 35 b1: a1 - 2 36 X: 5.0 37 a1: a0 + 2 38 a0: X 39 X: b1 40 } 41 42 t1total: { 43 for _, v in t1 {v} 44 } 45 46 // Issue #622 47 t2: a: { 48 a0: X 49 a1: a0 * 2 50 Y: a1 51 52 b0: Y 53 b1: b0 / 2 54 X: b1 55 56 X: 5.0 57 } 58 59 t2: b: { 60 b0: Y 61 b1: b0 / 2 62 X: b1 63 64 a0: X 65 a1: a0 * 2 66 Y: a1 67 68 X: 5.0 69 } 70 71 t2: c: { 72 b0: Y 73 b1: b0 / 2 74 X: b1 75 76 X: 5.0 77 78 a0: X 79 a1: a0 * 2 80 Y: a1 81 } 82 83 t2: d: { 84 b0: Y 85 b1: b0 / 2 86 X: b1 87 88 a0: X 89 a1: a0 * 2 90 Y: a1 91 92 X: 5.0 93 } 94 95 t2total: { 96 for _, v in t2 {v} 97 } 98 -- out/eval -- 99 (struct){ 100 t1: (struct){ 101 a: (struct){ 102 a1: (float){ 7.0 } 103 b1: (float){ 5.0 } 104 a0: (float){ 5.0 } 105 X: (float){ 5.0 } 106 } 107 b: (struct){ 108 X: (float){ 5.0 } 109 a1: (float){ 7.0 } 110 b1: (float){ 5.0 } 111 a0: (float){ 5.0 } 112 } 113 c: (struct){ 114 a1: (float){ 7.0 } 115 b1: (float){ 5.0 } 116 X: (float){ 5.0 } 117 a0: (float){ 5.0 } 118 } 119 } 120 t1total: (struct){ 121 a1: (float){ 7.0 } 122 b1: (float){ 5.0 } 123 a0: (float){ 5.0 } 124 X: (float){ 5.0 } 125 } 126 t2: (struct){ 127 a: (struct){ 128 a0: (float){ 5.0 } 129 a1: (float){ 10.0 } 130 Y: (float){ 10.0 } 131 b0: (float){ 10.0 } 132 b1: (float){ 5.0 } 133 X: (float){ 5.0 } 134 } 135 b: (struct){ 136 b0: (float){ 10.0 } 137 b1: (float){ 5.0 } 138 X: (float){ 5.0 } 139 a0: (float){ 5.0 } 140 a1: (float){ 10.0 } 141 Y: (float){ 10.0 } 142 } 143 c: (struct){ 144 b0: (float){ 10.0 } 145 b1: (float){ 5.0 } 146 X: (float){ 5.0 } 147 a0: (float){ 5.0 } 148 a1: (float){ 10.0 } 149 Y: (float){ 10.0 } 150 } 151 d: (struct){ 152 b0: (float){ 10.0 } 153 b1: (float){ 5.0 } 154 X: (float){ 5.0 } 155 a0: (float){ 5.0 } 156 a1: (float){ 10.0 } 157 Y: (float){ 10.0 } 158 } 159 } 160 t2total: (struct){ 161 a0: (float){ 5.0 } 162 a1: (float){ 10.0 } 163 Y: (float){ 10.0 } 164 b0: (float){ 10.0 } 165 b1: (float){ 5.0 } 166 X: (float){ 5.0 } 167 } 168 } 169 -- out/compile -- 170 --- in.cue 171 { 172 t1: { 173 a: { 174 a1: (〈0;a0〉 + 2) 175 b1: (〈0;a1〉 - 2) 176 a0: 〈0;X〉 177 X: 〈0;b1〉 178 X: 5.0 179 } 180 } 181 t1: { 182 b: { 183 X: 5.0 184 a1: (〈0;a0〉 + 2) 185 b1: (〈0;a1〉 - 2) 186 a0: 〈0;X〉 187 X: 〈0;b1〉 188 } 189 } 190 t1: { 191 c: { 192 a1: (〈0;a0〉 + 2) 193 b1: (〈0;a1〉 - 2) 194 X: 5.0 195 a0: 〈0;X〉 196 X: 〈0;b1〉 197 } 198 } 199 t1: { 200 c: { 201 b1: (〈0;a1〉 - 2) 202 a1: (〈0;a0〉 + 2) 203 X: 5.0 204 a0: 〈0;X〉 205 X: 〈0;b1〉 206 } 207 } 208 t1: { 209 c: { 210 b1: (〈0;a1〉 - 2) 211 X: 5.0 212 a1: (〈0;a0〉 + 2) 213 a0: 〈0;X〉 214 X: 〈0;b1〉 215 } 216 } 217 t1total: { 218 for _, v in 〈1;t1〉 { 219 〈1;v〉 220 } 221 } 222 t2: { 223 a: { 224 a0: 〈0;X〉 225 a1: (〈0;a0〉 * 2) 226 Y: 〈0;a1〉 227 b0: 〈0;Y〉 228 b1: (〈0;b0〉 / 2) 229 X: 〈0;b1〉 230 X: 5.0 231 } 232 } 233 t2: { 234 b: { 235 b0: 〈0;Y〉 236 b1: (〈0;b0〉 / 2) 237 X: 〈0;b1〉 238 a0: 〈0;X〉 239 a1: (〈0;a0〉 * 2) 240 Y: 〈0;a1〉 241 X: 5.0 242 } 243 } 244 t2: { 245 c: { 246 b0: 〈0;Y〉 247 b1: (〈0;b0〉 / 2) 248 X: 〈0;b1〉 249 X: 5.0 250 a0: 〈0;X〉 251 a1: (〈0;a0〉 * 2) 252 Y: 〈0;a1〉 253 } 254 } 255 t2: { 256 d: { 257 b0: 〈0;Y〉 258 b1: (〈0;b0〉 / 2) 259 X: 〈0;b1〉 260 a0: 〈0;X〉 261 a1: (〈0;a0〉 * 2) 262 Y: 〈0;a1〉 263 X: 5.0 264 } 265 } 266 t2total: { 267 for _, v in 〈1;t2〉 { 268 〈1;v〉 269 } 270 } 271 }