These are the functions that are needed to implement the interface `Iterable<'Iterator, 'Element>`: ### iterator
Overload Description
iterator(obj: Self) -> 'Iterator Creates an iterator of type 'Iterator over obj
### next
Overload Description
next(it: @'Iterator) -> 'Element Returns the next element in the iterator and advances it
### is_consumed
Overload Description
is_consumed(it: @'Iterator) -> Bool Returns true if the iterator has no more elements to traverse