Versions in this module Expand all Collapse all v1 v1.0.1 Oct 25, 2024 Changes in this version + var InvalidReferenceContext = &ivr + var ReferenceInvalid = Reference + func LexReader(r io.Reader) chan *node + func ParseCellReference(s string) (col string, row uint32, err error) + func RegisterFunction(name string, fn Function) + func RegisterFunctionComplex(name string, fn FunctionComplex) + func SupportedFunctions() []string + type BinOpType byte + const BinOpTypeConcat + const BinOpTypeDiv + const BinOpTypeEQ + const BinOpTypeExp + const BinOpTypeGEQ + const BinOpTypeGT + const BinOpTypeLEQ + const BinOpTypeLT + const BinOpTypeMinus + const BinOpTypeMult + const BinOpTypeNE + const BinOpTypePlus + const BinOpTypeUnknown + func (i BinOpType) String() string + type BinaryExpr struct + func (b BinaryExpr) Eval(ctx Context, ev Evaluator) Result + func (b BinaryExpr) Reference(ctx Context, ev Evaluator) Reference + type Bool struct + func (b Bool) Eval(ctx Context, ev Evaluator) Result + func (b Bool) Reference(ctx Context, ev Evaluator) Reference + type CellRef struct + func (c CellRef) Eval(ctx Context, ev Evaluator) Result + func (c CellRef) Reference(ctx Context, ev Evaluator) Reference + type ConstArrayExpr struct + func (c ConstArrayExpr) Eval(ctx Context, ev Evaluator) Result + func (c ConstArrayExpr) Reference(ctx Context, ev Evaluator) Reference + type Context interface + Cell func(ref string, ev Evaluator) Result + NamedRange func(name string) Reference + SetOffset func(col, row uint32) + Sheet func(name string) Context + type EmptyExpr struct + func (e EmptyExpr) Eval(ctx Context, ev Evaluator) Result + func (e EmptyExpr) Reference(ctx Context, ev Evaluator) Reference + type Error struct + func (e Error) Eval(ctx Context, ev Evaluator) Result + func (e Error) Reference(ctx Context, ev Evaluator) Reference + type ErrorType byte + const ErrorTypeDivideByZero + const ErrorTypeNA + const ErrorTypeName + const ErrorTypeNull + const ErrorTypeNum + const ErrorTypeRef + const ErrorTypeValue + type Evaluator interface + Eval func(ctx Context, formula string) Result + func NewEvaluator() Evaluator + type Expression interface + Eval func(ctx Context, ev Evaluator) Result + Reference func(ctx Context, ev Evaluator) Reference + func NewBinaryExpr(lhs Expression, op BinOpType, rhs Expression) Expression + func NewBool(v string) Expression + func NewCellRef(v string) Expression + func NewConstArrayExpr(data [][]Expression) Expression + func NewEmptyExpr() Expression + func NewError(v string) Expression + func NewFunction(name string, args []Expression) Expression + func NewNamedRangeRef(v string) Expression + func NewNegate(e Expression) Expression + func NewNumber(v string) Expression + func NewPrefixExpr(pfx, exp Expression) Expression + func NewRange(from, to Expression) Expression + func NewSheetPrefixExpr(s string) Expression + func NewString(v string) Expression + func Parse(r io.Reader) Expression + func ParseString(s string) Expression + type Function func(args []Result) Result + func LookupFunction(name string) Function + type FunctionCall struct + func (f FunctionCall) Eval(ctx Context, ev Evaluator) Result + func (f FunctionCall) Reference(ctx Context, ev Evaluator) Reference + type FunctionComplex func(ctx Context, ev Evaluator, args []Result) Result + func LookupFunctionComplex(name string) FunctionComplex + type Lexer struct + func NewLexer() *Lexer + func (l *Lexer) Next() *node + type NamedRangeRef struct + func (n NamedRangeRef) Eval(ctx Context, ev Evaluator) Result + func (n NamedRangeRef) Reference(ctx Context, ev Evaluator) Reference + type Negate struct + func (n Negate) Eval(ctx Context, ev Evaluator) Result + func (n Negate) Reference(ctx Context, ev Evaluator) Reference + type Number struct + func (n Number) Eval(ctx Context, ev Evaluator) Result + func (n Number) Reference(ctx Context, ev Evaluator) Reference + type PrefixExpr struct + func (p PrefixExpr) Eval(ctx Context, ev Evaluator) Result + func (p PrefixExpr) Reference(ctx Context, ev Evaluator) Reference + type Range struct + func (r Range) Eval(ctx Context, ev Evaluator) Result + func (r Range) Reference(ctx Context, ev Evaluator) Reference + type Reference struct + Type ReferenceType + Value string + func MakeRangeReference(ref string) Reference + type ReferenceType byte + const ReferenceTypeCell + const ReferenceTypeInvalid + const ReferenceTypeNamedRange + const ReferenceTypeRange + const ReferenceTypeSheet + func (i ReferenceType) String() string + type Result struct + ErrorMessage string + Ref Reference + Type ResultType + ValueArray [][]Result + ValueList []Result + ValueNumber float64 + ValueString string + func And(args []Result) Result + func Arabic(args []Result) Result + func Atan2(args []Result) Result + func Average(args []Result) Result + func Averagea(args []Result) Result + func Base(args []Result) Result + func Ceiling(args []Result) Result + func CeilingMath(args []Result) Result + func CeilingPrecise(args []Result) Result + func Char(args []Result) Result + func Clean(args []Result) Result + func Code(args []Result) Result + func Combin(args []Result) Result + func Combina(args []Result) Result + func Concatenate(args []Result) Result + func Count(args []Result) Result + func CountBlank(args []Result) Result + func Counta(args []Result) Result + func Decimal(args []Result) Result + func Degrees(args []Result) Result + func Even(args []Result) Result + func Exact(args []Result) Result + func Fact(args []Result) Result + func FactDouble(args []Result) Result + func False(args []Result) Result + func Floor(args []Result) Result + func FloorMath(args []Result) Result + func FloorPrecise(args []Result) Result + func GCD(args []Result) Result + func HLookup(args []Result) Result + func If(args []Result) Result + func IfError(args []Result) Result + func IfNA(args []Result) Result + func Index(args []Result) Result + func Indirect(ctx Context, ev Evaluator, args []Result) Result + func Int(args []Result) Result + func LCM(args []Result) Result + func Left(args []Result) Result + func Len(args []Result) Result + func Log(args []Result) Result + func Lookup(args []Result) Result + func Lower(args []Result) Result + func MDeterm(args []Result) Result + func MakeArrayResult(arr [][]Result) Result + func MakeBoolResult(b bool) Result + func MakeEmptyResult() Result + func MakeErrorResult(msg string) Result + func MakeErrorResultType(t ErrorType, msg string) Result + func MakeListResult(list []Result) Result + func MakeNumberResult(v float64) Result + func MakeStringResult(s string) Result + func Max(args []Result) Result + func Median(args []Result) Result + func Min(args []Result) Result + func Mod(args []Result) Result + func Mround(args []Result) Result + func Multinomial(args []Result) Result + func Munit(args []Result) Result + func NA(args []Result) Result + func Not(args []Result) Result + func Odd(args []Result) Result + func Offset(ctx Context, ev Evaluator, args []Result) Result + func Or(args []Result) Result + func Pi(args []Result) Result + func Power(args []Result) Result + func Product(args []Result) Result + func Proper(args []Result) Result + func Quotient(args []Result) Result + func Radians(args []Result) Result + func Rand(args []Result) Result + func RandBetween(args []Result) Result + func Rept(args []Result) Result + func Right(args []Result) Result + func Roman(args []Result) Result + func Round(args []Result) Result + func RoundDown(args []Result) Result + func RoundUp(args []Result) Result + func SeriesSum(args []Result) Result + func Sign(args []Result) Result + func Sum(args []Result) Result + func SumProduct(args []Result) Result + func SumSquares(args []Result) Result + func T(args []Result) Result + func Transpose(args []Result) Result + func Trim(args []Result) Result + func True(args []Result) Result + func Trunc(args []Result) Result + func Unicode(args []Result) Result + func Upper(args []Result) Result + func VLookup(args []Result) Result + func Xor(args []Result) Result + func (r Result) AsNumber() Result + func (r Result) AsString() Result + func (r Result) ListValues() []Result + func (r Result) String() string + func (r Result) Value() string + type ResultType byte + const ResultTypeArray + const ResultTypeEmpty + const ResultTypeError + const ResultTypeList + const ResultTypeNumber + const ResultTypeString + const ResultTypeUnknown + func (i ResultType) String() string + type SheetPrefixExpr struct + func (s SheetPrefixExpr) Eval(ctx Context, ev Evaluator) Result + func (s SheetPrefixExpr) Reference(ctx Context, ev Evaluator) Reference + type String struct + func (s String) Eval(ctx Context, ev Evaluator) Result + func (s String) Reference(ctx Context, ev Evaluator) Reference