cuelang.org/go@v0.10.1/cue/testdata/cycle/with_defaults.txtar (about) 1 -- in.cue -- 2 range1: { 3 min: *1 | int 4 range: >min 5 range: 8 6 } 7 range2: { 8 min: *1 | int 9 max: int & >min 10 } 11 rg: range2 & { 12 // min: 1 13 max: 8 14 } 15 -- out/eval/stats -- 16 Leaks: 0 17 Freed: 16 18 Reused: 11 19 Allocs: 5 20 Retain: 0 21 22 Unifications: 10 23 Conjuncts: 22 24 Disjuncts: 16 25 -- out/evalalpha -- 26 (struct){ 27 range1: (struct){ 28 min: (int){ |(*(int){ 1 }, (int){ int }) } 29 range: (int){ 8 } 30 } 31 range2: (struct){ 32 min: (int){ |(*(int){ 1 }, (int){ int }) } 33 max: (int){ &(>1, int) } 34 } 35 rg: (struct){ 36 max: (int){ 8 } 37 min: (int){ |(*(int){ 1 }, (int){ int }) } 38 } 39 } 40 -- diff/-out/evalalpha<==>+out/eval -- 41 diff old new 42 --- old 43 +++ new 44 @@ -8,7 +8,7 @@ 45 max: (int){ &(>1, int) } 46 } 47 rg: (struct){ 48 - min: (int){ |(*(int){ 1 }, (int){ int }) } 49 max: (int){ 8 } 50 + min: (int){ |(*(int){ 1 }, (int){ int }) } 51 } 52 } 53 -- diff/todo/p3 -- 54 Reordering. 55 -- out/eval -- 56 (struct){ 57 range1: (struct){ 58 min: (int){ |(*(int){ 1 }, (int){ int }) } 59 range: (int){ 8 } 60 } 61 range2: (struct){ 62 min: (int){ |(*(int){ 1 }, (int){ int }) } 63 max: (int){ &(>1, int) } 64 } 65 rg: (struct){ 66 min: (int){ |(*(int){ 1 }, (int){ int }) } 67 max: (int){ 8 } 68 } 69 } 70 -- out/compile -- 71 --- in.cue 72 { 73 range1: { 74 min: (*1|int) 75 range: >〈0;min〉 76 range: 8 77 } 78 range2: { 79 min: (*1|int) 80 max: (int & >〈0;min〉) 81 } 82 rg: (〈0;range2〉 & { 83 max: 8 84 }) 85 }