...
1# DO NOT EDIT; generated by go run testdata/gen.go
2#
3#name: diamond-shaped constraints
4#evalPartial
5-- in.cue --
6S: {
7 A: {
8 a: 1
9 }
10 B: A & {
11 b: 2
12 }
13}
14T: S & {// S == { A: { a:1 }, B: { a:1, b:2 } }
15 A: {
16 c: 3
17 }
18 B: {
19 d: 4 // Combines constraints S.A, S.B, T.A, and T.B // S.B & A
20 }
21}
22-- out/def --
23T: S & {
24 A: {
25 c: 3
26 }
27 B: {
28 d: 4
29 }
30}
31S: {
32 A: {
33 a: 1
34 }
35 B: A & {
36 b: 2
37 }
38}
39-- out/export --
40T: {
41 A: {
42 a: 1
43 c: 3
44 }
45 B: {
46 a: 1
47 b: 2
48 c: 3
49 d: 4
50 }
51}
52S: {
53 A: {
54 a: 1
55 }
56 B: {
57 a: 1
58 b: 2
59 }
60}
61-- out/yaml --
62T:
63 A:
64 a: 1
65 c: 3
66 B:
67 a: 1
68 b: 2
69 c: 3
70 d: 4
71S:
72 A:
73 a: 1
74 B:
75 a: 1
76 b: 2
77-- out/json --
78{"T":{"A":{"a":1,"c":3},"B":{"a":1,"b":2,"c":3,"d":4}},"S":{"A":{"a":1},"B":{"a":1,"b":2}}}
79-- out/legacy-debug --
80<0>{T: <1>{A: <2>{a: 1, c: 3}, B: <3>{a: 1, b: 2, c: 3, d: 4}}, S: <4>{A: <5>{a: 1}, B: <6>{a: 1, b: 2}}}
81-- out/compile --
82--- in.cue
83{
84 S: {
85 A: {
86 a: 1
87 }
88 B: (〈0;A〉 & {
89 b: 2
90 })
91 }
92 T: (〈0;S〉 & {
93 A: {
94 c: 3
95 }
96 B: {
97 d: 4
98 }
99 })
100}
101-- out/eval/stats --
102Leaks: 0
103Freed: 16
104Reused: 12
105Allocs: 4
106Retain: 0
107
108Unifications: 16
109Conjuncts: 25
110Disjuncts: 16
111-- out/evalalpha --
112(struct){
113 S: (struct){
114 A: (struct){
115 a: (int){ 1 }
116 }
117 B: (struct){
118 b: (int){ 2 }
119 a: (int){ 1 }
120 }
121 }
122 T: (struct){
123 A: (struct){
124 c: (int){ 3 }
125 a: (int){ 1 }
126 }
127 B: (struct){
128 d: (int){ 4 }
129 b: (int){ 2 }
130 c: (int){ 3 }
131 a: (int){ 1 }
132 }
133 }
134}
135-- diff/-out/evalalpha<==>+out/eval --
136diff old new
137--- old
138+++ new
139@@ -4,20 +4,20 @@
140 a: (int){ 1 }
141 }
142 B: (struct){
143- a: (int){ 1 }
144- b: (int){ 2 }
145+ b: (int){ 2 }
146+ a: (int){ 1 }
147 }
148 }
149 T: (struct){
150 A: (struct){
151- a: (int){ 1 }
152- c: (int){ 3 }
153- }
154- B: (struct){
155- a: (int){ 1 }
156- c: (int){ 3 }
157- b: (int){ 2 }
158+ c: (int){ 3 }
159+ a: (int){ 1 }
160+ }
161+ B: (struct){
162 d: (int){ 4 }
163+ b: (int){ 2 }
164+ c: (int){ 3 }
165+ a: (int){ 1 }
166 }
167 }
168 }
169-- diff/todo/p3 --
170Reordering
171-- out/eval --
172(struct){
173 S: (struct){
174 A: (struct){
175 a: (int){ 1 }
176 }
177 B: (struct){
178 a: (int){ 1 }
179 b: (int){ 2 }
180 }
181 }
182 T: (struct){
183 A: (struct){
184 a: (int){ 1 }
185 c: (int){ 3 }
186 }
187 B: (struct){
188 a: (int){ 1 }
189 c: (int){ 3 }
190 b: (int){ 2 }
191 d: (int){ 4 }
192 }
193 }
194}
View as plain text