debian man page for mojo::base

Query: mojo::base

OS: debian

Section: 3pm

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

Mojo::Base(3pm) 					User Contributed Perl Documentation					   Mojo::Base(3pm)

NAME
Mojo::Base - Minimal base class for Mojo projects
SYNOPSIS
package Cat; use Mojo::Base -base; has 'mouse'; has paws => 4; has [qw(ears eyes)] => 2; package Tiger; use Mojo::Base 'Cat'; has stripes => 42; package main; use Mojo::Base -strict; my $mew = Cat->new(mouse => 'Mickey'); say $mew->paws; say $mew->paws(5)->ears(4)->paws; my $rawr = Tiger->new(stripes => 23); say $rawr->ears * $rawr->stripes;
DESCRIPTION
Mojo::Base is a simple base class for Mojo projects. # Automatically enables "strict", "warnings" and Perl 5.10 features use Mojo::Base -strict; use Mojo::Base -base; use Mojo::Base 'SomeBaseClass'; All three forms save a lot of typing. # use Mojo::Base -strict; use strict; use warnings; use feature ':5.10'; # use Mojo::Base -base; use strict; use warnings; use feature ':5.10'; use Mojo::Base; push @ISA, 'Mojo::Base'; sub has { Mojo::Base::attr(__PACKAGE__, @_) } # use Mojo::Base 'SomeBaseClass'; use strict; use warnings; use feature ':5.10'; require SomeBaseClass; push @ISA, 'SomeBaseClass'; use Mojo::Base; sub has { Mojo::Base::attr(__PACKAGE__, @_) }
FUNCTIONS
Mojo::Base exports the following functions if imported with the "-base" flag or a base class. "has" has 'name'; has [qw(name1 name2 name3)]; has name => 'foo'; has name => sub {...}; has [qw(name1 name2 name3)] => 'foo'; has [qw(name1 name2 name3)] => sub {...}; Create attributes, just like the "attr" method.
METHODS
Mojo::Base implements the following methods. "new" my $object = BaseSubClass->new; my $object = BaseSubClass->new(name => 'value'); my $object = BaseSubClass->new({name => 'value'}); This base class provides a basic object constructor. You can pass it either a hash or a hash reference with attribute values. "attr" $object->attr('name'); BaseSubClass->attr('name'); BaseSubClass->attr([qw(name1 name2 name3)]); BaseSubClass->attr(name => 'foo'); BaseSubClass->attr(name => sub {...}); BaseSubClass->attr([qw(name1 name2 name3)] => 'foo'); BaseSubClass->attr([qw(name1 name2 name3)] => sub {...}); Create attributes. An array reference can be used to create more than one attribute. Pass an optional second argument to set a default value, it should be a constant or a sub reference. The sub reference will be excuted at accessor read time if there's no set value.
DEBUGGING
You can set the "MOJO_BASE_DEBUG" environment variable to get some advanced diagnostics information printed to "STDERR". MOJO_BASE_DEBUG=1
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>. perl v5.14.2 2012-09-05 Mojo::Base(3pm)
Related Man Pages
mojo(3pm) - debian
mojo::content::single(3pm) - debian
mojo::eventemitter(3pm) - debian
mojo::ioloop::delay(3pm) - debian
mojo::json(3pm) - debian
Similar Topics in the Unix Linux Community
row seperate
using awk
Calculate total sum from a file
sed command to remove the first field from a '|' delimited file
Add column to a file