cue: add package

excludes builtin support

Change-Id: Ifad5a13b0db11e54ea2ffc64117e499b12c8e00e
diff --git a/internal/internal.go b/internal/internal.go
index 23545ac..112cdd4 100644
--- a/internal/internal.go
+++ b/internal/internal.go
@@ -18,3 +18,14 @@
 
 // DebugStr prints a syntax node.
 var DebugStr func(x interface{}) string
+
+// EvalExpr evaluates an expression within an existing struct value.
+// Identifiers only resolve to values defined within the struct.
+//
+// Expressions may refer to builtin packages if they can be uniquely identified
+//
+// Both value and result are of type cue.Value, but are an interface to prevent
+// cyclic dependencies.
+//
+// TODO: extract interface
+var EvalExpr func(value, expr interface{}) (result interface{})