operator-iter-value.go: now operates on Iterator instead of *dataCursor
This commit is contained in:
parent
e463bd61d8
commit
04e71a1b3f
@ -4,7 +4,6 @@
|
||||
// operator-iter-value.go
|
||||
package expr
|
||||
|
||||
|
||||
//-------- iter value term
|
||||
|
||||
func newIterValueTerm(tk *Token) (inst *term) {
|
||||
@ -18,16 +17,18 @@ func newIterValueTerm(tk *Token) (inst *term) {
|
||||
}
|
||||
|
||||
func evalIterValue(ctx ExprContext, self *term) (v any, err error) {
|
||||
var leftValue any
|
||||
var childValue any
|
||||
|
||||
if leftValue, err = self.evalPrefix(ctx); err != nil {
|
||||
if childValue, err = self.evalPrefix(ctx); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
if dc, ok := leftValue.(*dataCursor); ok {
|
||||
/*if dc, ok := childValue.(*dataCursor); ok {
|
||||
v, err = dc.Current()
|
||||
} else*/if it, ok := childValue.(Iterator); ok {
|
||||
v, err = it.Current()
|
||||
} else {
|
||||
err = self.errIncompatibleType(leftValue)
|
||||
err = self.errIncompatibleType(childValue)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user