github.com/joomcode/cue@v0.4.4-0.20221111115225-539fe3512047/cue/testdata/cycle/issue241.txtar (about) 1 -- in.cue -- 2 #Value: 0 | 1 3 4 foo: #Value 5 foo: !=bar 6 bar: #Value 7 bar: !=foo 8 9 #Value: 0 | 1 10 11 Foo: #Value 12 Foo: !=Bar 13 Bar: #Value 14 Bar: !=Foo 15 Bar: 0 16 17 cell: a: 0 | 1 18 cell: a: !=cell.b 19 cell: b: 0 | 1 20 cell: b: !=cell.a 21 cell: a: 0 22 cell: b: _ 23 24 a: cell.a 25 b: cell.b 26 -- out/eval -- 27 (struct){ 28 #Value: (int){ |((int){ 0 }, (int){ 1 }) } 29 foo: (_|_){ 30 // [incomplete] foo: incomplete cause disjunction 31 } 32 bar: (_|_){ 33 // [incomplete] bar: incomplete cause disjunction 34 } 35 Foo: (int){ 1 } 36 Bar: (int){ 0 } 37 cell: (struct){ 38 a: (int){ 0 } 39 b: (int){ 1 } 40 } 41 a: (int){ 0 } 42 b: (int){ 1 } 43 } 44 -- out/compile -- 45 --- in.cue 46 { 47 #Value: (0|1) 48 foo: 〈0;#Value〉 49 foo: !=〈0;bar〉 50 bar: 〈0;#Value〉 51 bar: !=〈0;foo〉 52 #Value: (0|1) 53 Foo: 〈0;#Value〉 54 Foo: !=〈0;Bar〉 55 Bar: 〈0;#Value〉 56 Bar: !=〈0;Foo〉 57 Bar: 0 58 cell: { 59 a: (0|1) 60 } 61 cell: { 62 a: !=〈1;cell〉.b 63 } 64 cell: { 65 b: (0|1) 66 } 67 cell: { 68 b: !=〈1;cell〉.a 69 } 70 cell: { 71 a: 0 72 } 73 cell: { 74 b: _ 75 } 76 a: 〈0;cell〉.a 77 b: 〈0;cell〉.b 78 }