diff options
Diffstat (limited to 'lib/Data/MultiValued/Exceptions.pm')
-rw-r--r-- | lib/Data/MultiValued/Exceptions.pm | 115 |
1 files changed, 110 insertions, 5 deletions
diff --git a/lib/Data/MultiValued/Exceptions.pm b/lib/Data/MultiValued/Exceptions.pm index 8d444c0..4d6a1b6 100644 --- a/lib/Data/MultiValued/Exceptions.pm +++ b/lib/Data/MultiValued/Exceptions.pm @@ -1,5 +1,21 @@ package Data::MultiValued::Exceptions; -package Data::MultiValued::Exceptions::NotFound;{ +{ + $Data::MultiValued::Exceptions::VERSION = '0.0.1_2'; +} +{ + $Data::MultiValued::Exceptions::DIST = 'Data-MultiValued'; +} + +# ABSTRACT: exception classes + + +package Data::MultiValued::Exceptions::NotFound; +{ + $Data::MultiValued::Exceptions::NotFound::VERSION = '0.0.1_2'; +} +{ + $Data::MultiValued::Exceptions::NotFound::DIST = 'Data-MultiValued'; +}{ use Moose; extends 'Throwable::Error'; @@ -16,9 +32,16 @@ sub as_string { return $str; } +} + +package Data::MultiValued::Exceptions::TagNotFound; +{ + $Data::MultiValued::Exceptions::TagNotFound::VERSION = '0.0.1_2'; } -package Data::MultiValued::Exceptions::TagNotFound;{ +{ + $Data::MultiValued::Exceptions::TagNotFound::DIST = 'Data-MultiValued'; +}{ use Moose; extends 'Data::MultiValued::Exceptions::NotFound'; @@ -26,15 +49,31 @@ has '+message' => ( default => 'tag not found: ', ); } -package Data::MultiValued::Exceptions::RangeNotFound;{ + + +package Data::MultiValued::Exceptions::RangeNotFound; +{ + $Data::MultiValued::Exceptions::RangeNotFound::VERSION = '0.0.1_2'; +} +{ + $Data::MultiValued::Exceptions::RangeNotFound::DIST = 'Data-MultiValued'; +}{ use Moose; extends 'Data::MultiValued::Exceptions::NotFound'; has '+message' => ( - default => 'no range found for value ', + default => 'no range found for value: ', ); } -package Data::MultiValued::Exceptions::BadRange;{ + + +package Data::MultiValued::Exceptions::BadRange; +{ + $Data::MultiValued::Exceptions::BadRange::VERSION = '0.0.1_2'; +} +{ + $Data::MultiValued::Exceptions::BadRange::DIST = 'Data-MultiValued'; +}{ use Moose; extends 'Throwable::Error'; @@ -55,3 +94,69 @@ sub as_string { } 1; + +__END__ +=pod + +=head1 NAME + +Data::MultiValued::Exceptions - exception classes + +=head1 VERSION + +version 0.0.1_2 + +=head1 DESCRIPTION + +This module defines a few exception classes, using L<Throwable::Error> +as a base class. + +=head1 CLASSES + +=head2 C<Data::MultiValued::Exceptions::NotFound> + +Base class for "not found" errors. Has a C<value> attribute, +containing the value that was not found. + +=head2 C<Data::MultiValued::Exceptions::TagNotFound> + +Subclass of L<Data::MultiValued::Exceptions::NotFound>, for +tags. Stringifies to: + + tag not found: $value + + $stack_trace + +=head2 C<Data::MultiValued::Exceptions::RangeNotFound> + +Subclass of L<Data::MultiValued::Exceptions::NotFound>, for +ranges. Stringifies to: + + no range found for value: $value + + $stack_trace + +=head2 C<Data::MultiValued::Exceptions::BadRange> + +Thrown when an invalid range is supplied to a method. An invalid range +is a range with C<from> greater than C<to>. + +Stringifies to: + + invalid range: $from, $to + + $stack_trace + +=head1 AUTHOR + +Gianni Ceccarelli <dakkar@thenautilus.net> + +=head1 COPYRIGHT AND LICENSE + +This software is copyright (c) 2011 by Net-a-Porter.com. + +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + +=cut + |