You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
github-actions edited this page Mar 31, 2026
·
2 revisions
Provides counting behavior for iterators and iterator aggregates.
This trait SHALL add a
See: \FastForward\Iterator\count() implementation that delegates to the
inner iterator when possible. When the inner iterator does not implement
See: \Countable, the trait MUST determine whether the iterator can be safely
cloned before counting its elements through traversal. Implementing classes
MUST provide a compatible
See: \FastForward\Iterator\getInnerIterator() method that returns the
traversable object to be counted.
Full name: \FastForward\Iterator\CountableIteratorIteratorTrait
Methods
count
Counts the number of elements exposed by the inner iterator.
publiccount(): int
If the inner iterator implements
See: \Countable, this method SHALL
return the value provided by that implementation. Otherwise, it MUST count
elements by iterating over the iterator. If the inner iterator is not
cloneable, this method SHALL wrap the current object in an
See: \IteratorIterator instance and count through that wrapper to avoid
performing an invalid clone operation. If the inner iterator is cloneable,
this method SHOULD count over a clone so that the original iterator state
is preserved as much as possible.
Return Value:
the total number of elements available from the inner iterator