blob: ac561680678f53bd31b4efab0392e3e20f3690bc [file] [log] [blame]
# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: builtins
#evalPartial
-- in.cue --
import (
"list"
"strings"
)
a1: {
a: and([b, c])
b: =~"oo"
c: =~"fo"
}
a2: a1 & {a: "foo"}
a3: a1 & {a: "bar"}
o1: {
a: or([b, c])
b: string
c: "bar"
}
o2: o1 & {a: "foo"}
o3: o1 & {a: "foo", b: "baz"}
// Issue #585
stringListErrors: {
a: {
x: [string, ...string]
result: strings.Join(x, " ")
}
b: {
x: [int, ...string]
result: strings.Join(x, " ")
}
c: {
x: []
result: strings.Join(x, int)
}
}
decimalListErrors: {
a: {
x: [string]
result: list.Avg(x)
}
b: {
x: [int, ...string]
result: list.Avg(x)
}
}
-- out/def --
a1: {
a: =~"oo" & =~"fo"
b: =~"oo"
c: =~"fo"
}
a2: a1 & {
a: "foo"
}
a3: a1 & {
a: "bar"
}
o1: {
a: string
b: string
c: "bar"
}
o2: o1 & {
a: "foo"
}
o3: o1 & {
a: "foo"
b: "baz"
}
-- out/legacy-debug --
<0>{a1: <1>{a: (=~"oo" & =~"fo"), b: =~"oo", c: =~"fo"}, a2: <2>{a: "foo", b: =~"oo", c: =~"fo"}, a3: <3>{a: _|_((=~"oo" & "bar"):invalid value "bar" (does not match =~"oo")), b: =~"oo", c: =~"fo"}, o1: <4>{a: string, b: string, c: "bar"}, o2: <5>{a: "foo", b: string, c: "bar"}, o3: <6>{a: _|_(("baz" & "foo"):empty disjunction: conflicting values "baz" and "foo";("bar" & "foo"):empty disjunction: conflicting values "bar" and "foo"), b: "baz", c: "bar"}}
-- out/eval --
Errors:
o3.a: 2 errors in empty disjunction:
o3.a: conflicting values "bar" and "foo":
./in.cue:15:12
./in.cue:17:5
./in.cue:20:5
./in.cue:20:14
o3.a: conflicting values "baz" and "foo":
./in.cue:15:9
./in.cue:20:5
./in.cue:20:14
./in.cue:20:24
a3.a: invalid value "bar" (out of bound =~"oo"):
./in.cue:8:5
./in.cue:12:14
a3.a: invalid value "bar" (out of bound =~"fo"):
./in.cue:9:5
./in.cue:12:14
stringListErrors.b.result: invalid type element 0 (int) of string list argument 0:
./in.cue:31:17
stringListErrors.c.result: cannot use int (type int) as string in argument 2 to strings.Join:
./in.cue:36:33
decimalListErrors.a.result: invalid type element 0 (string) of number list argument 0:
./in.cue:43:17
Result:
(_|_){
// [eval]
a1: (struct){
a: (string){ &(=~"oo", =~"fo") }
b: (string){ =~"oo" }
c: (string){ =~"fo" }
}
a2: (struct){
a: (string){ "foo" }
b: (string){ =~"oo" }
c: (string){ =~"fo" }
}
a3: (_|_){
// [eval]
a: (_|_){
// [eval] a3.a: invalid value "bar" (out of bound =~"oo"):
// ./in.cue:8:5
// ./in.cue:12:14
// a3.a: invalid value "bar" (out of bound =~"fo"):
// ./in.cue:9:5
// ./in.cue:12:14
}
b: (string){ =~"oo" }
c: (string){ =~"fo" }
}
o1: (struct){
a: (string){ |((string){ string }, (string){ "bar" }) }
b: (string){ string }
c: (string){ "bar" }
}
o2: (struct){
a: (string){ "foo" }
b: (string){ string }
c: (string){ "bar" }
}
o3: (_|_){
// [eval]
a: (_|_){
// [eval] o3.a: 2 errors in empty disjunction:
// o3.a: conflicting values "bar" and "foo":
// ./in.cue:15:12
// ./in.cue:17:5
// ./in.cue:20:5
// ./in.cue:20:14
// o3.a: conflicting values "baz" and "foo":
// ./in.cue:15:9
// ./in.cue:20:5
// ./in.cue:20:14
// ./in.cue:20:24
}
b: (string){ "baz" }
c: (string){ "bar" }
}
stringListErrors: (_|_){
// [eval]
a: (struct){
x: (list){
0: (string){ string }
}
result: (_|_){
// [incomplete] stringListErrors.a.result: non-concrete string value for element 0 of string list argument 0:
// ./in.cue:26:17
}
}
b: (_|_){
// [eval]
x: (list){
0: (int){ int }
}
result: (_|_){
// [eval] stringListErrors.b.result: invalid type element 0 (int) of string list argument 0:
// ./in.cue:31:17
}
}
c: (_|_){
// [eval]
x: (#list){
}
result: (_|_){
// [eval] stringListErrors.c.result: cannot use int (type int) as string in argument 2 to strings.Join:
// ./in.cue:36:33
}
}
}
decimalListErrors: (_|_){
// [eval]
a: (_|_){
// [eval]
x: (#list){
0: (string){ string }
}
result: (_|_){
// [eval] decimalListErrors.a.result: invalid type element 0 (string) of number list argument 0:
// ./in.cue:43:17
}
}
b: (struct){
x: (list){
0: (int){ int }
}
result: (_|_){
// [incomplete] decimalListErrors.b.result: non-concrete number value for element 0 of number list argument 0:
// ./in.cue:48:17
}
}
}
}
-- out/compile --
--- in.cue
{
a1: {
a: and([
0;b〉,
0;c〉,
])
b: =~"oo"
c: =~"fo"
}
a2: (〈0;a1 & {
a: "foo"
})
a3: (〈0;a1 & {
a: "bar"
})
o1: {
a: or([
0;b〉,
0;c〉,
])
b: string
c: "bar"
}
o2: (〈0;o1 & {
a: "foo"
})
o3: (〈0;o1 & {
a: "foo"
b: "baz"
})
stringListErrors: {
a: {
x: [
string,
...string,
]
result: import;strings〉.Join(〈0;x〉, " ")
}
b: {
x: [
int,
...string,
]
result: import;strings〉.Join(〈0;x〉, " ")
}
c: {
x: []
result: import;strings〉.Join(〈0;x〉, int)
}
}
decimalListErrors: {
a: {
x: [
string,
]
result: import;list〉.Avg(〈0;x〉)
}
b: {
x: [
int,
...string,
]
result: import;list〉.Avg(〈0;x〉)
}
}
}