public bool foreach (ForallFunc<G> f) {
if (_current != null) {
- if (!f (_current)) {
+ if (!f (_current.value)) {
return false;
}
}
if (_next != null) {
_current = (owned)_next;
- if (!f (_current)) {
+ if (!f (_current.value)) {
return false;
}
} else if (_end) {
_end = true;
return true;
} else {
- if (!f (_current)) {
+ if (!f (_current.value)) {
return false;
}
}
}
while ((_next = _func ()) != null) {
_current = (owned)_next;
- if (!f (_current)) {
+ if (!f (_current.value)) {
return false;
}
}