operator-dot.go: '*dataCursor' case added; to be enhanced
This commit is contained in:
parent
81c85afbea
commit
895778f236
@ -56,6 +56,18 @@ func evalDot(ctx ExprContext, self *term) (v any, err error) {
|
||||
if v, ok = unboxedValue[rightValue]; !ok {
|
||||
err = fmt.Errorf("key %v does not belong to the dictionary", rightValue)
|
||||
}
|
||||
case *dataCursor:
|
||||
if indexTerm.symbol() == SymString {
|
||||
opName := indexTerm.value()
|
||||
if opName == resetName {
|
||||
err = unboxedValue.Reset()
|
||||
} else if opName == cleanName {
|
||||
err = unboxedValue.Clean()
|
||||
} else {
|
||||
err = indexTerm.Errorf("iterators do not support command %q", opName)
|
||||
}
|
||||
v = err == nil
|
||||
}
|
||||
default:
|
||||
err = self.errIncompatibleTypes(leftValue, rightValue)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user