// Copyright 2020 CUE Authors // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // Package cue is the main API for CUE evaluation. // // [Value] is the main type that represents CUE evaluations. // Values are created with a [cuecontext.Context]. // Only values created from the same Context can be involved in the same operation. // Values created from the same Context are not safe for concurrent use, // which we intend to change in the future. // // A Context defines the set of active packages, the translations of field // names to unique codes, as well as the set of builtins. Use // // import "cuelang.org/go/cue/cuecontext" // // ctx := cuecontext.New() // // to obtain a context. // // Note that the following types are DEPRECATED and their usage should be // avoided if possible: // // [FieldInfo] // [Instance] // [Runtime] // [Struct] // // Many types also have deprecated methods. Code that already uses deprecated // methods can keep using them for at least some time. We aim to provide a // go or cue fix solution to automatically rewrite code using the new API. package cue