made some interfaces exportable and fixed/enhaaced some selector operator versions
This commit is contained in:
@@ -58,7 +58,7 @@ const (
|
||||
posMultifix
|
||||
)
|
||||
|
||||
type evalFuncType func(ctx exprContext, self *term) (v any, err error)
|
||||
type evalFuncType func(ctx ExprContext, self *term) (v any, err error)
|
||||
|
||||
// type iterm interface {
|
||||
// getClass() termClass
|
||||
@@ -167,7 +167,7 @@ func (self *term) value() any {
|
||||
return self.tk.Value
|
||||
}
|
||||
|
||||
func (self *term) compute(ctx exprContext) (v any, err error) {
|
||||
func (self *term) compute(ctx ExprContext) (v any, err error) {
|
||||
if self.evalFunc == nil {
|
||||
err = self.tk.Errorf("undefined eval-func for %v term type", self.kind)
|
||||
} else {
|
||||
@@ -225,7 +225,7 @@ func (self *term) anyChildrenNil() bool {
|
||||
}
|
||||
return false
|
||||
}
|
||||
func (self *term) evalInfix(ctx exprContext) (leftValue, rightValue any, err error) {
|
||||
func (self *term) evalInfix(ctx ExprContext) (leftValue, rightValue any, err error) {
|
||||
if err = self.checkOperands(); err == nil {
|
||||
if leftValue, err = self.children[0].compute(ctx); err == nil {
|
||||
rightValue, err = self.children[1].compute(ctx)
|
||||
@@ -234,7 +234,7 @@ func (self *term) evalInfix(ctx exprContext) (leftValue, rightValue any, err err
|
||||
return
|
||||
}
|
||||
|
||||
func (self *term) evalPrefix(ctx exprContext) (rightValue any, err error) {
|
||||
func (self *term) evalPrefix(ctx ExprContext) (rightValue any, err error) {
|
||||
if err = self.checkOperands(); err == nil {
|
||||
rightValue, err = self.children[0].compute(ctx)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user