Perl Diver 2.31
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

Error::TypeTiny

Name Error::TypeTiny
Version 1.004004
Located at /usr/share/perl5/vendor_perl
File /usr/share/perl5/vendor_perl/Error/TypeTiny.pm
Is Core No
Search CPAN for this module Error::TypeTiny
Documentation Error::TypeTiny
Module Details Error::TypeTiny


NAME

Error::TypeTiny - exceptions for Type::Tiny and friends


SYNOPSIS

   use Data::Dumper;
   use Try::Tiny;
   use Types::Standard qw(Str);

   try {
      Str->assert_valid(undef);
   }
   catch {
      my $exception = shift;
      warn "Encountered Error: $exception";
      warn Dumper($exception->explain)
         if $exception->isa("Error::TypeTiny::Assertion");
   };


STATUS

This module is covered by the Type-Tiny stability policy.


DESCRIPTION

When Type::Tiny and its related modules encounter an error, they throw an exception object. These exception objects inherit from Error::TypeTiny.

Constructors

new(%attributes)
Moose-style constructor function.

throw(%attributes)
Constructs an exception and passes it to die.

Automatically populates context and stack_trace if appropriate.

Attributes

message
The error message.

context
Hashref containing the package, file and line that generated the error.

stack_trace
A more complete stack trace. This feature requires the Devel::StackTrace manpage; use the $StackTrace package variable to switch it on.

Methods

to_string
Returns the message, followed by the context if it is set.

Functions

Error::TypeTiny::croak($format, @args)
Functional-style shortcut to throw method. Takes an sprintf-style format string and optional arguments to construct the message.

Overloading

  • Stringification is overloaded to call to_string.

Package Variables

%Error::TypeTiny::CarpInternal
Serves a similar purpose to %Carp::CarpInternal.

$Error::TypeTiny::StackTrace
Boolean to toggle stack trace generation.

$Error::TypeTiny::LastError
A reference to the last exception object thrown.


CAVEATS

Although Error::TypeTiny objects are thrown for errors produced by Type::Tiny, that doesn't mean every time you use Type::Tiny you'll get Error::TypeTinys whenever you want.

For example, if you use a Type::Tiny type constraint in a Moose attribute, Moose will not call the constraint's assert_valid method (which throws an exception). Instead it will call check and get_message (which do not), and will confess an error message of its own. (The $LastError package variable may save your bacon.)


BUGS

Please report any bugs to http://rt.cpan.org/Dist/Display.html.


SEE ALSO

the Error::TypeTiny::Assertion manpage, the Error::TypeTiny::WrongNumberOfParameters manpage.

the Try::Tiny manpage, the Try::Tiny::ByClass manpage.


AUTHOR

Toby Inkster <tobyink@cpan.org>.


COPYRIGHT AND LICENCE

This software is copyright (c) 2013-2014, 2017-2019 by Toby Inkster.

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


DISCLAIMER OF WARRANTIES

THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

Perl Diver brought to you by ScriptSolutions.com © 1997- 2024