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

FreeBSD Manual Pages

  
 
  

home | help
List::Objects::WithUtiUsertContributedWPerltDocumentatiArray::WithJunctions(3)

NAME
       List::Objects::WithUtils::Role::Array::WithJunctions - Add junctions

SYNOPSIS
	 ## Via	List::Objects::WithUtils::Array	->
	 use List::Objects::WithUtils 'array';

	 my $array = array(qw/ a b c /);

	 if ( $array->any_items	eq 'b' ) {
	   ...
	 }

	 if ( $array->all_items	eq 'a' ) {
	   ...
	 }

	 if ( $array->any_items	== qr/^b/ ) {
	   ...
	 }

	 ## As a Role ->
	 use Role::Tiny::With;
	 with 'List::Objects::WithUtils::Role::Array',
	      'List::Objects::WithUtils::Role::Array::WithJunctions';

DESCRIPTION
       These methods supply overloaded
       List::Objects::WithUtils::Array::Junction objects that can be compared
       with values using normal	Perl comparison	operators.

       Regular expressions can be matched by providing a "qr//"	regular
       expression object to the	"==" or	"!=" operators.

       There is	no support for the "~~"	experimental smart-match operator.

       The junction objects returned are subclasses of
       List::Objects::WithUtils::Array,	allowing manipulation of junctions (of
       varying degrees of sanity) -- a simple case might be generating a new
       junction	out of an old junction:

	 my $list = array(3, 4,	5);
	 if ( (my $anyof = $list->any_items) > 2 ) {
	   my $incr = $anyof->map(sub {	$_[0] +	1 })->all_items;
	   if (	$incr >	6 ) {
	     # ...
	   }
	   # Drop junction magic again:
	   my $plain = array( $incr->all );
	 }

   any_items
       Returns the overloaded any object for the current array;	a comparison
       is true if any items in the array satisfy the condition.

   all_items
       Returns the overloaded all object for the current array;	a comparison
       is true only if all items in the	array satisfy the condition.

AUTHOR
       Jon Portnoy <avenj@cobaltirc.org>

perl v5.32.0	       List::Objects::WithUtils::Role::Array::WithJunctions(3)

NAME | SYNOPSIS | DESCRIPTION | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=List::Objects::WithUtils::Role::Array::WithJunctions&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help