phpman > perldoc > Class::ErrorHandler(3pm)

Markdown | JSON | MCP    

NAME
    Class::ErrorHandler - Base class for error handling

SYNOPSIS
        package Foo;
        use base qw( Class::ErrorHandler );

        sub class_method {
            my $class = shift;
            ...
            return $class->error("Help!")
                unless $continue;
        }

        sub object_method {
            my $obj = shift;
            ...
            return $obj->error("I am no more")
                unless $continue;
        }

        package main;
        use Foo;

        Foo->class_method or die Foo->errstr;

        my $foo = Foo->new;
        $foo->object_method or die $foo->errstr;

DESCRIPTION
    *Class::ErrorHandler* provides an error-handling mechanism that's generic enough to be used as
    the base class for a variety of OO classes. Subclasses inherit its two error-handling methods,
    *error* and *errstr*, to communicate error messages back to the calling program.

    On failure (for whatever reason), a subclass should call *error* and return to the caller;
    *error* itself sets the error message internally, then returns "undef". This has the effect of
    the method that failed returning "undef" to the caller. The caller should check for errors by
    checking for a return value of "undef", and calling *errstr* to get the value of the error
    message on an error.

    As demonstrated in the SYNOPSIS, *error* and *errstr* work as both class methods and object
    methods.

USAGE
  Class->error($message)
  $object->error($message)
    Sets the error message for either the class *Class* or the object *$object* to the message
    *$message*. Returns "undef".

  Class->errstr
  $object->errstr
    Accesses the last error message set in the class *Class* or the object *$object*, respectively,
    and returns that error message.

LICENSE
    This library is free software; you can redistribute it and/or modify it under the same terms as
    Perl itself.

AUTHOR & COPYRIGHT
    Except where otherwise noted, *Class::ErrorHandler* is Copyright 2004 Benjamin Trott,
    cpan AT stupidfool.org. All rights reserved.

Generated by phpman v3.7.12 Author: Che Dong Under GNU General Public License
2026-06-13 14:41 @216.73.216.28
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!