# DO NOT EDIT; generated by go run testdata/gen.go
#
#name: conditional field
#evalFull
-- in.cue --

if b {
	a: "foo"
}
b: true
c: {
	a: 3
	if a > 1 {
		a: 3
	}
}
d: {
	a: int
	if a > 1 {
		a: 3
	}
}
-- out/def --
b: true
a: "foo"
c: {
	a: 3
}
d: {
	a: int
	if a > 1 {
		a: 3
	}
}
-- out/legacy-debug --
<0>{b: true, a: "foo", c: <1>{a: 3}, d: <2>{a: int if (<3>.a > 1) yield <4>{a: 3}}}
-- out/compile --
--- in.cue
{
  if 〈0;b〉 {
    a: "foo"
  }
  b: true
  c: {
    a: 3
    if (〈0;a〉 > 1) {
      a: 3
    }
  }
  d: {
    a: int
    if (〈0;a〉 > 1) {
      a: 3
    }
  }
}
-- out/eval --
(struct){
  b: (bool){ true }
  c: (struct){
    a: (int){ 3 }
  }
  d: (_|_){
    // [incomplete] incomplete
    a: (int){ int }
  }
  a: (string){ "foo" }
}
