github.com/solo-io/cue@v0.4.7/encoding/gocode/testdata/pkg2/cue_gen.go (about)

     1  // Code generated by gocode.Generate; DO NOT EDIT.
     2  
     3  package pkg2
     4  
     5  import (
     6  	"fmt"
     7  
     8  	"github.com/solo-io/cue/cue"
     9  	"github.com/solo-io/cue/encoding/gocode/gocodec"
    10  	_ "github.com/solo-io/cue/pkg"
    11  )
    12  
    13  var cuegenvalImportMe = cuegenMake("ImportMe", &ImportMe{})
    14  
    15  // Validate validates x.
    16  func (x *ImportMe) Validate() error {
    17  	return cuegenCodec.Validate(cuegenvalImportMe, x)
    18  }
    19  
    20  var cuegenvalPickMe = cuegenMake("PickMe", nil)
    21  
    22  // Validate validates x.
    23  func (x PickMe) Validate() error {
    24  	return cuegenCodec.Validate(cuegenvalPickMe, x)
    25  }
    26  
    27  var cuegenCodec, cuegenInstance = func() (*gocodec.Codec, *cue.Instance) {
    28  	var r *cue.Runtime
    29  	r = &cue.Runtime{}
    30  	instances, err := r.Unmarshal(cuegenInstanceData)
    31  	if err != nil {
    32  		panic(err)
    33  	}
    34  	if len(instances) != 1 {
    35  		panic("expected encoding of exactly one instance")
    36  	}
    37  	return gocodec.New(r, nil), instances[0]
    38  }()
    39  
    40  // cuegenMake is called in the init phase to initialize CUE values for
    41  // validation functions.
    42  func cuegenMake(name string, x interface{}) cue.Value {
    43  	f, err := cuegenInstance.Value().FieldByName(name, true)
    44  	if err != nil {
    45  		panic(fmt.Errorf("could not find type %q in instance", name))
    46  	}
    47  	v := f.Value
    48  	if x != nil {
    49  		w, err := cuegenCodec.ExtractType(x)
    50  		if err != nil {
    51  			panic(err)
    52  		}
    53  		v = v.Unify(w)
    54  	}
    55  	return v
    56  }
    57  
    58  // Data size: 276 bytes.
    59  var cuegenInstanceData = []byte("\x01\x1f\x8b\b\x00\x00\x00\x00\x00\x00\xffD\x8e\xc1J\x031\x10\x86\xe7\u07ee`C\x15|\x00a\xd9S\x05\u066d\x82\bE\x84\xaa\b\x1e\x94\xe2U<\x8ci\x8c\xa1mR\x9a\xecA\u0103Z\xabO\xe3+FR*\x9ef\xf8f\xfe\x9fo+~e\xc8\xe27!\xbe\x13\x1d\u01f7\x16\xd01\xd6\a\xb6R]p\xe0\xc4\xd1B~\xeb\\@F\u0207\x1c\x9e\xd0!l\\\x9a\x89\xf2\x88K\"\u068d\x9f\x19\xb0}w/\x1bU=\x9a\xc9:\xb9$\xc4\x05Q7~\xb4\x80\xcd\u007f\xbe d\xc8ox\xaaRQ\xbe\x82\x82\x88\xe2O\x12\x01\xb0/\x1b5a\xab+7\u05f5v\xb5\xb2\u048d\x8cM\xbbt#U\a\xe5\u00c8\x03\u05f3\xb1>\x04\xb0\x93f\xfd\xa7]\xc9F\x81g,\u01ecU\x91NB\x98\xe9\xcc\xcdCQ\xfa07V\xfbR\x88\xab\x15\xb9V\xfd\xe2E\xb4\a\xfd\xe2\xe4\xa0\xd7\x13\xed\xb3~\xb1~\xa9\u039d\rl\xac\x1f\xd8\xe7n\xc9\x0f\xb2\xdc\x13\xafbh\xe48eN\x8f\x04\xd1o\x00\x00\x00\xff\xff\ue135\t=\x01\x00\x00")