Mojo::Base man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

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

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;

	 my $mew = Cat->new(mouse => 'Mickey');
	 print $mew->paws;
	 print $mew->paws(5)->paws;

	 my $rawr = Tiger->new(stripes => 23);
	 print $rawr->ears * $rawr->stripes;

DESCRIPTION
       Mojo::Base is a simple base class for Mojo projects.

	 # Automatically enables "strict" and "warnings"
	 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 $instance = BaseSubClass->new;
	 my $instance = BaseSubClass->new(name => 'value');
	 my $instance = 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"
	 __PACKAGE__->attr('name');
	 __PACKAGE__->attr([qw/name1 name2 name3/]);
	 __PACKAGE__->attr(name => 'foo');
	 __PACKAGE__->attr(name => sub {...});
	 __PACKAGE__->attr([qw/name1 name2 name3/] => 'foo');
	 __PACKAGE__->attr([qw/name1 name2 name3/] => sub {...});

       Create attributes.  An arrayref 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.1			  2011-09-14			 Mojo::Base(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net