summaryrefslogtreecommitdiff
path: root/lib/Data/MultiValued/Exceptions.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Data/MultiValued/Exceptions.pm')
-rw-r--r--lib/Data/MultiValued/Exceptions.pm115
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
+