1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
#name: top-level definition with struct and disjunction
#evalPartial
-- in.cue --
#def: {
Type: string
Text: string
Size: int
}
#def: {
Type: "B"
Size: 0
} | {
Type: "A"
Size: 1
}
-- out/def --
#def: {
Size: 0
Type: "B"
Text: string
} | {
Size: 1
Type: "A"
Text: string
}
-- out/export --
-- out/yaml --
{}
-- out/json --
{}
-- out/legacy-debug --
<0>{#def: (<1>C{Size: (0 & int), Type: ("B" & string), Text: string} | <2>C{Size: (1 & int), Type: ("A" & string), Text: string})}
-- out/compile --
--- in.cue
{
#def: {
Type: string
Text: string
Size: int
}
#def: ({
Type: "B"
Size: 0
}|{
Type: "A"
Size: 1
})
}
-- out/eval/stats --
Leaks: 0
Freed: 10
Reused: 5
Allocs: 5
Retain: 0
Unifications: 8
Conjuncts: 15
Disjuncts: 10
-- out/eval --
(struct){
#def: (#struct){ |((#struct){
Type: (string){ "B" }
Text: (string){ string }
Size: (int){ 0 }
}, (#struct){
Type: (string){ "A" }
Text: (string){ string }
Size: (int){ 1 }
}) }
}
|