Versions in this module Expand all Collapse all v0 v0.1.1 Oct 30, 2026 v0.1.0 Oct 30, 2026 Changes in this version + const MaxDepth + const MaxSize + var Bool = Type + var Bytes = Type + var Double = Type + var Dyn = Type + var ErrUnknown = errors.New("cellite: unknown") + var Int = Type + var Null = Type + var String = Type + var Uint = Type + func FormatType(t Type) string + func ReservedWords() []string + func StandardFunctions() []string + func Text(v Value) (string, error) + func TypeEqual(a, b Type) bool + func TypeNames() []string + type Activation interface + Var func(i int) (Value, Presence) + type Decls struct + Funcs []Func + Structs []Struct + Vars []Var + type Env struct + func NewEnv(d Decls) (*Env, error) + func (e *Env) Activation(vals map[string]any, unknown ...string) Activation + func (e *Env) Check(x *Expr) (*Expr, error) + func (e *Env) Compile(src string) (*Program, error) + func (e *Env) Program(x *Expr) (*Program, error) + func (e *Env) VarIndex(name string) (int, bool) + func (e *Env) Vars() []Var + type Error struct + Col int + Kind ErrorKind + Line int + Msg string + Name string + Pos int + func (e *Error) Error() string + type ErrorKind uint8 + const SyntaxError + const TypeError + const Undeclared + const Unsupported + type EvalError struct + Err error + Msg string + func (e *EvalError) Error() string + func (e *EvalError) Unwrap() error + type Expr struct + Args []*Expr + Member bool + Name string + Op Op + Overload string + Pos int + Ref int + Type Type + Value any + func Parse(src string) (*Expr, error) + type Field struct + Name string + Type Type + type Func struct + Name string + Overloads []Overload + type Kind uint8 + const BoolKind + const BytesKind + const DoubleKind + const DynKind + const IntKind + const ListKind + const MapKind + const NullKind + const StringKind + const StructKind + const UintKind + type List interface + At func(i int) Value + Len func() int + type Map interface + Get func(key Value) (Value, bool) + Len func() int + Range func(f func(k, v Value) bool) + type Object interface + Field func(i int) Value + type Op uint8 + const OpAdd + const OpAnd + const OpCall + const OpCond + const OpDiv + const OpEq + const OpGe + const OpGt + const OpHas + const OpIdent + const OpIn + const OpIndex + const OpLe + const OpList + const OpLit + const OpLt + const OpMap + const OpMod + const OpMul + const OpNe + const OpNeg + const OpNot + const OpOr + const OpSelect + const OpSub + const OpVar + type Overload struct + Args []Type + Fn func(args []Value) (Value, error) + ID string + Member bool + Result Type + type Presence uint8 + const Absent + const Present + const Unknown + type Program struct + func (p *Program) Eval(a Activation) (Value, error) + func (p *Program) Expr() *Expr + func (p *Program) Test(a Activation) (holds, unknown bool) + func (p *Program) Type() Type + type Struct struct + Fields []Field + Name string + type Type struct + Elem *Type + Key *Type + Kind Kind + Name string + func ListOf(elem Type) Type + func MapOf(key, val Type) Type + func StructOf(name string) Type + type Value struct + func BoolValue(b bool) Value + func BytesValue(b []byte) Value + func DoubleValue(f float64) Value + func IntValue(i int64) Value + func ListValue(l List) Value + func MapValue(m Map) Value + func NullValue() Value + func ObjectValue(name string, o Object) Value + func StringValue(s string) Value + func UintValue(u uint64) Value + func ValueOf(x any) Value + func (v Value) Bool() bool + func (v Value) Bytes() []byte + func (v Value) Double() float64 + func (v Value) Int() int64 + func (v Value) Interface() any + func (v Value) Kind() Kind + func (v Value) List() List + func (v Value) Map() Map + func (v Value) Object() Object + func (v Value) String() string + func (v Value) StructName() string + func (v Value) Uint() uint64 + type Var struct + Name string + Type Type