Al Newkirk > Bubblegum-0.19 > Bubblegum::Class

Download:
Bubblegum-0.19.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.19   Source   Latest Release: Bubblegum-0.31

NAME ^

Bubblegum::Class - Object Orientation for Bubblegum via Moo

VERSION ^

version 0.19

SYNOPSIS ^

    package BankAccount;

    use Bubblegum::Class;

    has balance => (
        is      => 'rw',
        default => 0
    );

    sub withdrawal {
        my $self = shift;
        my $amount = $self->balance - shift // 0;
        return $self->balance($amount);
    }

And elsewhere:

    my $account = BankAccount->new(balance => 100000);
    say $account->withdrawal(1500);

DESCRIPTION ^

Bubblegum::Class provides object orientation for your classes by way of Moo and activates all of the options enabled by the Bubblegum module. Using this module allows you to define classes as if you were using Moo directly.

    use Bubblegum::Class;

is equivalent to

    use 5.10.0;
    use strict;
    use autobox;
    use autodie ':all';
    use feature ':5.10';
    use warnings FATAL => 'all';
    use English -no_match_vars;
    use utf8::all;
    use mro 'c3';
    use Moo;

AUTHOR ^

Al Newkirk <anewkirk@ana.io>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2013 by Al Newkirk.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: