cuelang.org/go@v0.13.0/cue/testdata/cycle/issue3827.txtar (about) 1 -- in.cue -- 2 reduced: { 3 A: b: (A.c & {}).x 4 A: null | { c: x: 1 } 5 } 6 7 full: { 8 out: #Workflow.#Step & { 9 uses: "actions/upload-artifact@v3" 10 with: { 11 name: "foo" 12 path: "bar" 13 } 14 } 15 16 Y=#Workflow: #Step: (Y.steps & {x: {}}).x 17 18 #Workflow: null | { 19 steps: [string]: { 20 uses?: string 21 with?: [string]: string 22 } 23 } 24 } 25 -- out/eval/stats -- 26 Leaks: 6 27 Freed: 29 28 Reused: 22 29 Allocs: 13 30 Retain: 10 31 32 Unifications: 31 33 Conjuncts: 57 34 Disjuncts: 38 35 -- out/eval -- 36 (struct){ 37 reduced: (struct){ 38 A: (struct){ 39 b: (int){ 1 } 40 c: (struct){ 41 x: (int){ 1 } 42 } 43 } 44 } 45 full: (struct){ 46 out: (#struct){ 47 uses: (string){ "actions/upload-artifact@v3" } 48 with: (#struct){ 49 name: (string){ "foo" } 50 path: (string){ "bar" } 51 } 52 } 53 #Workflow: (#struct){ 54 #Step: (#struct){ 55 uses?: (string){ string } 56 with?: (#struct){ 57 } 58 } 59 steps: (#struct){ 60 } 61 } 62 } 63 } 64 -- out/compile -- 65 --- in.cue 66 { 67 reduced: { 68 A: { 69 b: (〈1;A〉.c & {}).x 70 } 71 A: (null|{ 72 c: { 73 x: 1 74 } 75 }) 76 } 77 full: { 78 out: (〈0;#Workflow〉.#Step & { 79 uses: "actions/upload-artifact@v3" 80 with: { 81 name: "foo" 82 path: "bar" 83 } 84 }) 85 #Workflow: { 86 #Step: (〈1;#Workflow〉.steps & { 87 x: {} 88 }).x 89 } 90 #Workflow: (null|{ 91 steps: { 92 [string]: { 93 uses?: string 94 with?: { 95 [string]: string 96 } 97 } 98 } 99 }) 100 } 101 }