diff options
author | dakkar <dakkar@thenautilus.net> | 2014-12-27 14:28:17 +0000 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2014-12-27 14:28:17 +0000 |
commit | ae91140cf2604bfc4f9330c876ba4a6a9a0b18e8 (patch) | |
tree | 59be50074693e49cb5d93e8177ebe415acbdde28 /lib/Net/Hawk/Errors.pm | |
parent | authenticate client tests (diff) | |
download | net-hawk-ae91140cf2604bfc4f9330c876ba4a6a9a0b18e8.tar.gz net-hawk-ae91140cf2604bfc4f9330c876ba4a6a9a0b18e8.tar.bz2 net-hawk-ae91140cf2604bfc4f9330c876ba4a6a9a0b18e8.zip |
porting to Perl 6!
Diffstat (limited to 'lib/Net/Hawk/Errors.pm')
-rw-r--r-- | lib/Net/Hawk/Errors.pm | 51 |
1 files changed, 13 insertions, 38 deletions
diff --git a/lib/Net/Hawk/Errors.pm b/lib/Net/Hawk/Errors.pm index befd142..3172865 100644 --- a/lib/Net/Hawk/Errors.pm +++ b/lib/Net/Hawk/Errors.pm @@ -1,42 +1,17 @@ -package Net::Hawk::Errors; -use strict; -use warnings; -use 5.010; - -package Net::Hawk::Errors::base { - use Moo; - use Types::Standard qw(Str); - with 'Throwable'; - use overload - q{""} => 'as_string', - fallback => 1; - - has message => ( - is => 'ro', - isa => Str, - required => 1, - ); - - sub as_string { $_[0]->message } -}; - -package Net::Hawk::Errors::BadRequest { - use Moo; extends 'Net::Hawk::Errors::base'; +package Net::Hawk::Errors { + use v6; + class base is Exception { + has $.text; + sub message { return "{.text}" } + } - has value => (is => 'ro'); + class BadRequest is base { + has $.value; - sub as_string { - my ($self) = @_; - return sprintf( - '%s (%s)', - $self->message, - $self->value // '<undef>', - ); + sub message { + return "{ .text } ({ .value // '<undef>' })"; + } } -}; - -package Net::Hawk::Errors::UnAuthorized { - use Moo; extends 'Net::Hawk::Errors::base'; -}; -1; + class UnAuthorized is base {} +} |