# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: regexp
#evalPartial
-- in.cue --
c1: "a" =~ "a"
c2: "foo" =~ "[a-z]{3}"
c3: "foo" =~ "[a-z]{4}"
c4: "foo" !~ "[a-z]{4}"

b1: =~"a"
b1: "a"
b2: =~"[a-z]{3}"
b2: "foo"
b3: =~"[a-z]{4}"
b3: "foo"
b4: !~"[a-z]{4}"
b4: "foo"

s1: !="b" & =~"c"     // =~"c"
s2: =~"c" & !="b"     // =~"c"
s3: !="b" & =~"[a-z]" // != "b" & =~"[a-z]"
s4: =~"[a-z]" & !="b" // != "b" & =~"[a-z]"

e1: "foo" =~ 1
e2: "foo" !~ true
e3: !="a" & <5
-- out/def --
c1: true
c2: true
c3: false
c4: true
b1: "a"
b2: "foo"
b3: _|_ // invalid value "foo" (does not match =~"[a-z]{4}")
b4: "foo"
s1: =~"c"
s2: !="b" & =~"[a-z]"
e1: _|_ // invalid operation "foo" =~ 1 (mismatched types string and int)
e2: _|_ // invalid operation "foo" !~ true (mismatched types string and bool)
e3: _|_ // conflicting values !="a" and <5 (mismatched types string and number)
-- out/legacy-debug --
<0>{c1: true, c2: true, c3: false, c4: true, b1: "a", b2: "foo", b3: _|_((=~"[a-z]{4}" & "foo"):invalid value "foo" (does not match =~"[a-z]{4}")), b4: "foo", s1: =~"c", s2: (!="b" & =~"[a-z]"), e1: _|_(("foo" =~ 1):invalid operation "foo" =~ 1 (mismatched types string and int)), e2: _|_(("foo" !~ true):invalid operation "foo" !~ true (mismatched types string and bool)), e3: _|_((!="a" & <5):conflicting values !="a" and <5 (mismatched types string and number))}
-- out/compile --
--- in.cue
{
  c1: ("a" =~ "a")
  c2: ("foo" =~ "[a-z]{3}")
  c3: ("foo" =~ "[a-z]{4}")
  c4: ("foo" !~ "[a-z]{4}")
  b1: =~"a"
  b1: "a"
  b2: =~"[a-z]{3}"
  b2: "foo"
  b3: =~"[a-z]{4}"
  b3: "foo"
  b4: !~"[a-z]{4}"
  b4: "foo"
  s1: (!="b" & =~"c")
  s2: (=~"c" & !="b")
  s3: (!="b" & =~"[a-z]")
  s4: (=~"[a-z]" & !="b")
  e1: ("foo" =~ 1)
  e2: ("foo" !~ true)
  e3: (!="a" & <5)
}
-- out/eval --
Errors:
e3: conflicting values !="a" and <5 (mismatched types string and number):
    ./in.cue:22:5
    ./in.cue:22:13
b3: invalid value "foo" (out of bound =~"[a-z]{4}"):
    ./in.cue:10:5
    ./in.cue:11:5
e1: cannot use 1 (type int) as type (string|bytes):
    ./in.cue:20:5
    ./in.cue:20:14
e2: cannot use true (type bool) as type (string|bytes):
    ./in.cue:21:5
    ./in.cue:21:14

Result:
(_|_){
  // [eval]
  c1: (bool){ true }
  c2: (bool){ true }
  c3: (bool){ false }
  c4: (bool){ true }
  b1: (string){ "a" }
  b2: (string){ "foo" }
  b3: (_|_){
    // [eval] b3: invalid value "foo" (out of bound =~"[a-z]{4}"):
    //     ./in.cue:10:5
    //     ./in.cue:11:5
  }
  b4: (string){ "foo" }
  s1: (string){ =~"c" }
  s2: (string){ =~"c" }
  s3: (string){ &(!="b", =~"[a-z]") }
  s4: (string){ &(=~"[a-z]", !="b") }
  e1: (_|_){
    // [eval] e1: cannot use 1 (type int) as type (string|bytes):
    //     ./in.cue:20:5
    //     ./in.cue:20:14
  }
  e2: (_|_){
    // [eval] e2: cannot use true (type bool) as type (string|bytes):
    //     ./in.cue:21:5
    //     ./in.cue:21:14
  }
  e3: (_|_){
    // [eval] e3: conflicting values !="a" and <5 (mismatched types string and number):
    //     ./in.cue:22:5
    //     ./in.cue:22:13
  }
}
