Mo::build - Adds the build feature to Mo
use Mo qw'build'; has name => ( is => 'rw' ); sub BUILD { my $self = shift; ... }
Adds the BUILD feature to Mo when imported.
BUILD
If a sub called BUILD exists on the package, it will be executed on $self during instantiation.
$self
Any non-lazy default and builder attributes, as well as any value passed to new will already be set when BUILD is called.
default
builder
new
package ABCD; use Mo qw'build builder default'; use feature 'say'; has a => (default => 1234, lazy => 0); has b => (builder => '_b', lazy => 0); has c => (is => 'rw'); has d => (is => 'rw'); sub _b { 'blue' } sub BUILD { my ($self) = @_; say $self->{a}; say $self->{b}; say $self->{c}; say 'undef' unless defined $self->{d}; } ABCD->new(c => 'days') # => 1234 # blue # days # undef
To install Mo, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mo
CPAN shell
perl -MCPAN -e shell install Mo
For more information on module installation, please visit the detailed CPAN module installation guide.