Dios
view release on metacpan or search on metacpan
lib/Dios.pm view on Meta::CPAN
$init = qq{:DEFAULT(___i_n_i_t__${name}___(\$self)) } . ($init_field{DEFAULT_INIT} ? $init : q{});
$INIT_FUNC = qq{sub ___i_n_i_t__${name}___ { my (\$self) = \@_; $init_val }};
}
else {
$init .= $initializer;
}
# Update the attribute setting code...
$^H{'Dios attrnames'} .= "$name,";
if ($sigil eq '$') {
$^H{'Dios attrs'} .= $] < 5.022 ? qq{alias my \$$name = \$_Dios__attr_${name}[\${\$_[0]}];}
: qq{ \\ my \$$name = \\ \$_Dios__attr_${name}[\${\$_[0]}];};
}
else {
$^H{'Dios attrs'}
.= $] < 5.022 ? qq{alias my $sigil$name = $sigil}.qq{{\$_Dios__attr_${name}[\${\$_[0]}]};}
: qq{ \\ my $sigil$name = \$_Dios__attr_${name}[\${\$_[0]}]; };
}
# Add type-checking code to alias...
if ($type) {
$^H{'Dios attrs'} .= qq{ Dios::Types::_set_var_type(q{$type}, \\$sigil$name, 'Value (%s) for $sigil$name attribute', $constraint ); };
( run in 0.417 second using v1.01-cache-2.11-cpan-05444aca049 )