blob: 2562d6b063034e5a878400f62594c458210ac22d [file] [log] [blame]
# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: conjunction of optional sets
#evalFull
-- in.cue --
#A: {
[=~"^[a-s]*$"]: int
}
#B: {
[=~"^[m-z]*$"]: int
}
#C: #A & #B
c: #C & {aaa: 3}
#D: {#A & #B}
d: #D & {aaa: 3}
-- out/def --
#A: {
[=~"^[a-s]*$"]: int
}
#B: {
[=~"^[m-z]*$"]: int
}
#C: #A & #B
c: _|_ // field "aaa" not allowed in closed struct
#D: {
#A & #B
}
d: _|_ // field "aaa" not allowed in closed struct
-- out/legacy-debug --
<0>{#A: <1>C{[=~"^[a-s]*$"]: <2>(_: string)->int, }, #B: <3>C{[=~"^[m-z]*$"]: <4>(_: string)->int, }, #C: <5>C{(C{[=~"^[a-s]*$"]: <6>(_: string)->int} & C{[=~"^[m-z]*$"]: <7>(_: string)->int}), }, c: _|_(3:field "aaa" not allowed in closed struct), #D: <8>C{(C{[=~"^[a-s]*$"]: <9>(_: string)->int} & C{[=~"^[m-z]*$"]: <10>(_: string)->int}), }, d: _|_(3:field "aaa" not allowed in closed struct)}
-- out/compile --
--- in.cue
{
#A: {
[=~"^[a-s]*$"]: int
}
#B: {
[=~"^[m-z]*$"]: int
}
#C: (〈0;#A〉 & 〈0;#B〉)
c: (〈0;#C & {
aaa: 3
})
#D: {
(〈1;#A & 1;#B〉)
}
d: (〈0;#D & {
aaa: 3
})
}
-- out/eval --
Errors:
c: field not allowed: aaa:
./in.cue:2:2
./in.cue:4:5
./in.cue:8:5
./in.cue:8:10
./in.cue:9:5
./in.cue:9:11
d: field not allowed: aaa:
./in.cue:2:2
./in.cue:4:5
./in.cue:11:5
./in.cue:11:6
./in.cue:11:11
./in.cue:12:4
./in.cue:12:10
Result:
(_|_){
// [eval]
#A: (#struct){
}
#B: (#struct){
}
#C: (#struct){
}
c: (_|_){
// [eval]
aaa: (_|_){
// [eval] c: field not allowed: aaa:
// ./in.cue:2:2
// ./in.cue:4:5
// ./in.cue:8:5
// ./in.cue:8:10
// ./in.cue:9:5
// ./in.cue:9:11
}
}
#D: (#struct){
}
d: (_|_){
// [eval]
aaa: (_|_){
// [eval] d: field not allowed: aaa:
// ./in.cue:2:2
// ./in.cue:4:5
// ./in.cue:11:5
// ./in.cue:11:6
// ./in.cue:11:11
// ./in.cue:12:4
// ./in.cue:12:10
}
}
}