| Iterator {container} | R Documentation |
Iterator Class
Description
An Iterator is an object that allows to iterate over
sequences. It implements next_iter and get_value to iterate and retrieve the
value of the sequence it is associated with.
For the standard S3 interface, see iter().
Methods
Public methods
Method new()
Iterator constructor
Usage
Iterator$new(x, .subset = .subset2)
Arguments
xobject to iterate over
.subsetaccessor function
Returns
invisibly returns the Iterator object
Method begin()
set iterator to the first element of the underlying sequence unless length of sequence is zero, in which case it will point to nothing.
Usage
Iterator$begin()
Returns
invisibly returns the Iterator object
Method get_value()
get value where the iterator points to
Usage
Iterator$get_value()
Returns
returns the value the Iterator is pointing at.
Method get_next()
get next value
Usage
Iterator$get_next()
Returns
increments the iterator and returns the value the Iterator
is pointing to.
Method has_next()
check if iterator has more elements
Usage
Iterator$has_next()
Returns
TRUE if iterator has next element else FALSE
Method has_value()
check if iterator points at value
Usage
Iterator$has_value()
Returns
TRUE if iterator points at value otherwise FALSE
Method length()
iterator length
Usage
Iterator$length()
Returns
number of elements to iterate
Method pos()
get iterator position
Usage
Iterator$pos()
Returns
integer if iterator has next element else FALSE
Method next_iter()
increment iterator
Usage
Iterator$next_iter()
Returns
invisibly returns the Iterator object
Method print()
print method
Usage
Iterator$print()
Method reset_iter()
reset iterator to '0'
Usage
Iterator$reset_iter()
Returns
invisibly returns the Iterator object
Method clone()
The objects of this class are cloneable with this method.
Usage
Iterator$clone(deep = FALSE)
Arguments
deepWhether to make a deep clone.
Author(s)
Roman Pahl
Examples
# Numeric Vector
v = 1:3
it = Iterator$new(v)
it
try(it$get_value()) # iterator does not point at a value
it$has_value()
it$has_next()
it$next_iter()
it$get_value()
it$get_next()
it$get_next()
it
it$has_next()
it$begin()
it$get_value()
it$reset_iter()
# Works by reference for Container
co = Container$new(1, 2, 3)
it = co$iter()
it$get_next()
co$discard(2)
it
it$get_value()
co$discard(1)
it
it$get_value()
it$begin()