# DO NOT EDIT; generated by go run testdata/gen.go
#
#evalFull
-- in.cue --
#Task: {
	{
		op:          "pull"
		tag:         *"latest" | string
		refToTag:    tag
		tagExpr:     tag + "dd"
		tagInString: "\(tag)"
	} | {
		op: "scratch"
	}
}

foo: #Task & {"op": "pull"}
-- out/def --
#Task: {
	op:          "pull"
	tag:         *"latest" | string
	refToTag:    tag
	tagExpr:     "latestdd"
	tagInString: "latest"
} | {
	op: "scratch"
}
foo: #Task & {
	op: "pull"
}
-- out/export --
foo: {
	op:          "pull"
	tag:         "latest"
	refToTag:    "latest"
	tagExpr:     "latestdd"
	tagInString: "latest"
}
-- out/yaml --
foo:
  op: pull
  tag: latest
  refToTag: latest
  tagExpr: latestdd
  tagInString: latest
-- out/json --
{"foo":{"op":"pull","tag":"latest","refToTag":"latest","tagExpr":"latestdd","tagInString":"latest"}}
-- out/legacy-debug --
<0>{#Task: (<1>C{op: "pull", tag: (*"latest" | string), refToTag: <1>.tag, tagExpr: (<1>.tag + "dd"), tagInString: ""+<1>.tag+""} | <2>C{op: "scratch"}), foo: <3>C{op: "pull", tag: "latest", refToTag: "latest", tagExpr: "latestdd", tagInString: "latest"}}
-- out/compile --
--- in.cue
{
  #Task: {
    ({
      op: "pull"
      tag: (*"latest"|string)
      refToTag: 〈0;tag〉
      tagExpr: (〈0;tag〉 + "dd")
      tagInString: "\(〈0;tag〉)"
    }|{
      op: "scratch"
    })
  }
  foo: (〈0;#Task〉 & {
    op: "pull"
  })
}
-- out/eval --
(struct){
  #Task: (struct){ |((#struct){
      op: (string){ "pull" }
      tag: (string){ |(*(string){ "latest" }, (string){ string }) }
      refToTag: (string){ |(*(string){ "latest" }, (string){ string }) }
      tagExpr: (string){ "latestdd" }
      tagInString: (string){ "latest" }
    }, (#struct){
      op: (string){ "scratch" }
    }) }
  foo: (#struct){
    op: (string){ "pull" }
    tag: (string){ |(*(string){ "latest" }, (string){ string }) }
    refToTag: (string){ |(*(string){ "latest" }, (string){ string }) }
    tagExpr: (string){ "latestdd" }
    tagInString: (string){ "latest" }
  }
}
