# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: list types
#evalPartial
-- in.cue --
l0: 3 * [int]
l0: [1, 2, 3]
l2: [...{a: int}]
l2: [{a: 1}, {a: 2, b: 3}]

// TODO: work out a decent way to specify length ranges of lists.
// l3: <=10*[int]
// l3: [1, 2, 3, ...]

s1: (6 * [int])[2:3]
s2: [0, 2, 3][1:2]

i1: (6 * [int])[2]
i2: [0, 2, 3][2]

t0: [...{a: 8}]
t0: [{}]
t1: [...]
t1: [...int]

e0: 2 * [{}]
e0: [{}]
e1: [...int]
e1: [...float]
-- out/def --
l0: [1, 2, 3]
l2: [{
	a: 1
}, {
	a: 2
	b: 3
}]
s1: [int]
s2: [2]
i1: [int, int, int, int, int, int][2]
i2: 3
t0: [{
	a: 8
}]
t1: [...int]
e0: _|_ // conflicting list lengths: conflicting values 2 and 1
e1: [..._|_ // conflicting values int and float (mismatched types int and float),
]
-- out/legacy-debug --
<0>{l0: [1,2,3], l2: [<1>{a: 1},<2>{a: 2, b: 3}], s1: [int], s2: [2], i1: int, i2: 3, t0: [<3>{a: 8}], t1: [, ...int], e0: _|_(([<4>{},<4>{}] & [<5>{}]):conflicting list lengths: conflicting values 2 and 1), e1: [, ..._|_((int & float):conflicting values int and float (mismatched types int and float))]}
