MooseX::Role::WithOverloading - Roles which support overloading


NAME

MooseX::Role::WithOverloading - Roles which support overloading


VERSION

version 0.04


SYNOPSIS

    package MyRole;
    use MooseX::Role::WithOverloading;
    use overload
        q{""}    => 'as_string',
        fallback => 1;
    has message => (
        is       => 'rw',
        isa      => 'Str',
    );
    sub as_string { shift->message }
    package MyClass;
    use Moose;
    use namespace::autoclean;
    with 'MyRole';
    package main;
    my $i = MyClass->new( message => 'foobar' );
    print $i; # Prints 'foobar'


DESCRIPTION

MooseX::Role::WithOverloading allows you to write a the Moose::Role manpage which defines overloaded operators and allows those operator overloadings to be composed into the classes/roles/instances it's compiled to, while plain the Moose::Role manpages would lose the overloading.


AUTHORS

Florian Ragwitz <rafl@debian.org> Tomas Doran <bobtfish@bobtfish.net>


COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by Florian Ragwitz.

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

 MooseX::Role::WithOverloading - Roles which support overloading