several changes:
1. moved scan/symbol.go to new package sym and adapted all files that reference Symbol type and its values. 2. new type interval defined by begin, end and step values. 3. replaced operator-range.go with operator-interval.go. 4. replaced range operator begin:end with begin..end..step. 5. new implementation of sub-collection extraction based on new interval literal.
This commit is contained in:
@@ -6,6 +6,8 @@ package kern
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"git.portale-stac.it/go-pkg/expr/sym"
|
||||
)
|
||||
|
||||
type Term interface {
|
||||
@@ -17,8 +19,12 @@ type Term interface {
|
||||
GetChildSource(index int) string
|
||||
GetLeftChild() (c Term)
|
||||
GetRightChild() (c Term)
|
||||
Symbol() (symbol sym.Symbol)
|
||||
IsSymbol(symbol sym.Symbol) bool
|
||||
IsOneOf(symbols ...sym.Symbol) bool
|
||||
IsAssign() bool
|
||||
IsVar() bool
|
||||
SetSymbol(symbol sym.Symbol)
|
||||
Compute(ctx ExprContext) (result any, err error)
|
||||
EvalInfix(ctx ExprContext) (leftValue, rightValue any, err error)
|
||||
Errorf(template string, args ...any) (err error)
|
||||
|
||||
Reference in New Issue
Block a user