Provided by: libcatmandu-perl_1.2020-1_all bug

NAME

       Catmandu::Fix::Has - helper class for creating Fix-es with (optional) parameters

SYNOPSIS

           package Catmandu::Fix::foo;
           use Moo;
           use Catmandu::Fix::Has;

           has greeting => (fix_arg => 1);   # required parameter 1
           has message  => (fix_arg => 1);   # required parameter 2
           has eol      => (fix_opt => 1 , default => sub {'!'} ); # optional parameter 'eol' with default '!'

           sub fix {
               my ($self,$data) = @_;

               print STDERR $self->greeting . ", " . $self->message . $self->eol . "\n";

               $data;
           }

           1;

PARAMETERS

       fix_arg
           Required argument when set to 1. The Fix containing the code fragment below needs two
           arguments.

               use Catmandu::Fix::Has;

               has message => (fix_arg => 1); # required parameter 1
               has number  => (fix_arg => 1); # required parameter 2

           When the fix_arg is set to 'collect', then all arguments are read into an array. The
           Fix containing the code fragment below needs at least 1 or more arguments. All
           arguments will get collected into the "messages" array:

               use Catmandu::Fix::Has;

               has messages => (fix_arg => 'collect'); # required parameter

       fix_opt
           Optional named argument when set to 1. The Fix containing the code fragment below can
           have two optional arguments "message: ...", "number: ...":

               use Catmandu::Fix::Has;

               has message => (fix_opt => 1); # optional parameter 1
               has number  => (fix_opt => 1); # optional parameter 2

           When the fix_opt is set to 'collect', then all optional argument are read into an
           array. The Fix containing the code fragment below needs at least 1 or more arguments.
           All arguments will get collected into the "options" array:

               use Catmandu::Fix::Has;

               has options => (fix_opt => 'collect'); # optional parameter

SEE ALSO

       Catmandu::Fix