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
|
// operator-iter-value.go
|
||||||
package expr
|
package expr
|
||||||
|
|
||||||
|
|
||||||
//-------- iter value term
|
//-------- iter value term
|
||||||
|
|
||||||
func newIterValueTerm(tk *Token) (inst *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) {
|
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
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if dc, ok := leftValue.(*dataCursor); ok {
|
/*if dc, ok := childValue.(*dataCursor); ok {
|
||||||
v, err = dc.Current()
|
v, err = dc.Current()
|
||||||
|
} else*/if it, ok := childValue.(Iterator); ok {
|
||||||
|
v, err = it.Current()
|
||||||
} else {
|
} else {
|
||||||
err = self.errIncompatibleType(leftValue)
|
err = self.errIncompatibleType(childValue)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user