# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: range unification
#evalPartial
-- in.cue --
	// with concrete values
a1: >=1 & <=5 & 3
a2: >=1 & <=5 & 1
a3: >=1 & <=5 & 5
a4: >=1 & <=5 & 6
a5: >=1 & <=5 & 0

a6:  3 & >=1 & <=5
a7:  1 & >=1 & <=5
a8:  5 & >=1 & <=5
a9:  6 & >=1 & <=5
a10: 0 & >=1 & <=5

// with ranges
b1: >=1 & <=5 & >=1 & <=5
b2: >=1 & <=5 & >=1 & <=1
b3: >=1 & <=5 & >=5 & <=5
b4: >=1 & <=5 & >=2 & <=3
b5: >=1 & <=5 & >=3 & <=9
b6: >=1 & <=5 & >=5 & <=9
b7: >=1 & <=5 & >=6 & <=9

b8:  >=1 & <=5 & >=1 & <=5
b9:  >=1 & <=1 & >=1 & <=5
b10: >=5 & <=5 & >=1 & <=5
b11: >=2 & <=3 & >=1 & <=5
b12: >=3 & <=9 & >=1 & <=5
b13: >=5 & <=9 & >=1 & <=5
b14: >=6 & <=9 & >=1 & <=5

// ranges with more general types
c1: int & >=1 & <=5
c2: >=1 & <=5 & int
c3: string & >=1 & <=5
c4: >=1 & <=5 & string

// other types
s1: >="d" & <="z" & "e"
s2: >="d" & <="z" & "ee"

n1: number & >=1 & <=2
n2: int & >=1.1 & <=1.3
n3: >=1.0 & <=3.0 & 2
n4: >=0.0 & <=0.1 & 0.09999
n5: >=1 & <=5 & 2.5
-- out/def --
	// with concrete values
a1:  3
a2:  1
a3:  5
a4:  _|_ // invalid value 6 (out of bound <=5)
a5:  _|_ // invalid value 0 (out of bound >=1)
a6:  3
a7:  1
a8:  5
a9:  _|_ // invalid value 6 (out of bound <=5)
a10: _|_ // invalid value 0 (out of bound >=1)

// with ranges
b1:  >=1 & <=5
b2:  1
b3:  5
b4:  >=2 & <=3
b5:  >=3 & <=5
b6:  5
b7:  _|_ // conflicting bounds >=6 and <=5
b8:  >=1 & <=5
b9:  1
b10: 5
b11: >=2 & <=3
b12: >=3 & <=5
b13: 5
b14: _|_ // conflicting bounds >=6 and <=5

// ranges with more general types
c1: uint & >=1 & <=5
c2: uint & >=1 & <=5
c3: _|_ // conflicting values string and >=1 (mismatched types string and number)
c4: _|_ // conflicting values (>=1 & <=5) and string (mismatched types number and string)

// other types
s1: "e"
s2: "ee"
n1: >=1 & <=2
n2: _|_ // conflicting bounds int & >=1.1 and <=1.3
n3: 2
n4: 0.09999
n5: 2.5
-- out/legacy-debug --
<0>{a1: 3, a2: 1, a3: 5, a4: _|_((<=5 & 6):invalid value 6 (out of bound <=5)), a5: _|_((>=1 & 0):invalid value 0 (out of bound >=1)), a6: 3, a7: 1, a8: 5, a9: _|_((<=5 & 6):invalid value 6 (out of bound <=5)), a10: _|_((>=1 & 0):invalid value 0 (out of bound >=1)), b1: (>=1 & <=5), b2: 1, b3: 5, b4: (>=2 & <=3), b5: (>=3 & <=5), b6: 5, b7: _|_(conflicting bounds >=6 and <=5), b8: (>=1 & <=5), b9: 1, b10: 5, b11: (>=2 & <=3), b12: (>=3 & <=5), b13: 5, b14: _|_(conflicting bounds >=6 and <=5), c1: (int & >=1 & <=5), c2: (<=5 & int & >=1), c3: _|_((string & >=1):conflicting values string and >=1 (mismatched types string and number)), c4: _|_(((>=1 & <=5) & string):conflicting values (>=1 & <=5) and string (mismatched types number and string)), s1: "e", s2: "ee", n1: (>=1 & <=2), n2: _|_(conflicting bounds int & >=1.1 and <=1.3), n3: 2, n4: 0.09999, n5: 2.5}
