Boolean flag. States that the returned attribute must be unique, associative MULTI. Defaults to 0. Only makes sense if type is MULTI and unique is true.
MULTI
type
Boolean flag. States that the returned attribute must be an ordered list. Defaults to 0. Only makes sense if type is MULTI.
If type is BOOLEAN a PerlBean::Attribute::Boolean, on SINGLE a PerlBean::Attribute::Single and on MULTI a PerlBean::Attribute::Multi is returned. Defaults to 'SINGLE'. NOTE: type has precedence over ordered and unique.
PerlBean::Attribute::Boolean
PerlBean::Attribute::Single
PerlBean::Attribute::Multi
Boolean flag. States that the items in the MULTI attribute must be unique. Defaults to 0. Only makes sense if type is MULTI.
Options for OPT_HASH_REF passed to package PerlBean::Attribute may include:
OPT_HASH_REF
PerlBean::Attribute
default_value
Passed to set_default_value().
exception_class
Passed to set_exception_class(). Defaults to 'Error::Simple'.
mandatory
Passed to set_mandatory(). Defaults to 0.
method_base
Passed to set_method_base().
method_factory_name
Passed to set_method_factory_name(). Mandatory option.
perl_bean
Passed to set_perl_bean().
short_description
Passed to set_short_description().
Options for OPT_HASH_REF passed to package PerlBean::Attribute::Single may include:
allow_empty
Passed to set_allow_empty(). Defaults to 1.
allow_isa
Passed to set_allow_isa(). Must be an ARRAY reference.
ARRAY
allow_ref
Passed to set_allow_ref(). Must be an ARRAY reference.
allow_rx
Passed to set_allow_rx(). Must be an ARRAY reference.
allow_value
Passed to set_allow_value(). Must be an ARRAY reference.
# Switch attribute type if ( ! defined(\$opt->{type} ) || \$opt->{type} eq 'SINGLE') { require PerlBean::Attribute::Single; return( PerlBean::Attribute::Single->new(\$opt) ); } elsif ( \$opt->{type} eq 'BOOLEAN' ) { require PerlBean::Attribute::Boolean; return( PerlBean::Attribute::Boolean->new(\$opt) ); } elsif ( \$opt->{type} eq 'MULTI' ) { if ( \$opt->{unique} ) { if ( \$opt->{ordered} ) { require PerlBean::Attribute::Multi::Unique::Ordered; return( PerlBean::Attribute::Multi::Unique::Ordered->new(\$opt) ); } elsif ( \$opt->{associative} ) { if ( \$opt->{method_key} ) { require PerlBean::Attribute::Multi::Unique::Associative::MethodKey; return( PerlBean::Attribute::Multi::Unique::Associative::MethodKey->new(\$opt) ); } else { require PerlBean::Attribute::Multi::Unique::Associative; return( PerlBean::Attribute::Multi::Unique::Associative->new(\$opt) ); } } else { require PerlBean::Attribute::Multi::Unique; return( PerlBean::Attribute::Multi::Unique->new(\$opt) ); } } else { require PerlBean::Attribute::Multi::Ordered; return( PerlBean::Attribute::Multi::Ordered->new(\$opt) ); } } else { throw Error::Simple("ERROR: PerlBean::Attribute::Factory::attribute, option 'type' must be one of 'BOOLEAN', 'SINGLE' or 'MULTI' and NOT '\$opt->{type}'."); } EOF }, ], } );
sub get_syn { use IO::File; my $fh = IO::File->new('< syn-PerlBean_Attribute_Factory.pl'); $fh = IO::File->new('< gen/syn-PerlBean_Attribute_Factory.pl') if (! defined($fh)); my $syn = ''; my $prev_line = $fh->getline (); while (my $line = $fh->getline ()) { $syn .= ' ' . $prev_line; $prev_line = $line; } return($syn); }
1;
1 POD Error
The following errors were encountered while parsing the POD:
=back doesn't take any parameters, but you said =back EOF body => <<EOF, my \$self = shift; my \$opt = shift || {};
To install PerlBean, copy and paste the appropriate command in to your terminal.
cpanm
cpanm PerlBean
CPAN shell
perl -MCPAN -e shell install PerlBean
For more information on module installation, please visit the detailed CPAN module installation guide.