Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Net::CLI::Interact::RoUserIContributed PeNet::CLI::Interact::Role::Iterator(3)

NAME
       Net::CLI::Interact::Role::Iterator - Array-based	Iterator

SYNOPSIS
	my $count = $iter->count;

	$iter->reset;
	while (	$iter->has_next	) {
	   print $iter->next;
	}

DESCRIPTION
       This module implements an array-based iterator which may	be mixed-in to
       add management of a sequence of elements	and processing of that
       sequence.

       The iterator is inspired	by MooseX::Iterator but	limited	to arrays and
       adds many other facilities. The following section describes the methods
       provided	by this	class.

USAGE
       The slot	used for storing iterator elements is named "_sequence"	and
       you should write	your consuming class to	marshall data into this	slot,
       perhaps via "BUILD" or "init_arg". For example:

	has '+_sequence' => (
	   isa => 'ArrayRef[Thingy]',
	   init_arg => 'things',
	);

INTERFACE
   count
       The number of elements currently	stored in the iterator.	Note that this
       is of course not	the same as the	index of the last item in the iterator
       (which is 0-based)

   first
       Returns the first item in the iterator.

   last
       Returns the last	item in	the iterator.

   item_at( $pos )
       Returns the item	at the given position in the iterator, or throws an
       exception if $pos is past the end of the	iterator. The position is
       0-based.

   insert_at( $pos, $iter )
       Inserts the contents of the passed iterator starting at (not after) the
       position	given. The passed iterator must	also be	a consumer of this
       role. The position is 0-based.

   append( $iter )
       Shorthand for "insert_at" when you want to add the contents of the
       passed iterator after the end of	the sequence.

   idx(	$pos? )
       Returns the index (0-based) of the current iterator cursor, or sets the
       cursor if a position (again, 0-based) is	passed.

       An exception is thrown if you attempt to	read the cursor	position
       before having read any elements from the	iterator, or if	the iterator
       is empty.

   next
       Returns the next	item in	the iterator sequence, and advances the
       cursor.	Throws an exception if you have	already	reached	the end	of the
       sequence.

   has_next
       Returns true if there are further elements to be	read from the
       iterator.

   peek
       Returns the next	item in	the sequence without advancing the position of
       the cursor. It returns "undef" if you are already at the	end of the
       sequence.

   reset
       Resets the cursor so you	can iterate through the	sequence of elements
       again.

perl v5.32.0			  2020-08Net::CLI::Interact::Role::Iterator(3)

NAME | SYNOPSIS | DESCRIPTION | USAGE | INTERFACE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Net::CLI::Interact::Role::Iterator&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help