NAME

Simo::Error - Error object for Simo

VERSION

Version 0.0206

DESCRIPTION

Simo::Error provide structured error system to Simo.

You can create structure err message.

If err is ocuured, You can get err object;

CAUTION

Simo::Error is yet experimental stage.

SYNOPSIS

use Simo::Error;

# create error object;
my $err_str = Simo::Error->new( 
    type => 'err_type',
    msg => 'message',
    info => { some1 => 'some info1', some2 => 'some info2' }
);

# throw err
Simo::Error->throw( 
    type => 'err_type',
    msg => 'message',
    info => { some1 => 'some info1', some2 => 'some info2' }
);

ACCESSOR

You can contain variouse error information.

type

is error type.

msg

is error message

pos

is position in which error is occured.

You do not have to specify this attr in create_err_str argument.

pos is automatically set, parsing croak message or die message.

pkg

is package name

attr

is attr name

val

is attr value

info

is information other than type, msg or pos.

This is hash ref.

METHOD

new

is constructor;

my $err_obj = Simo::Error->new(
    type => 'err_type',
    msg => 'message',
    info => { some1 => 'some info1', some2 => 'some info2' }
);

throw

thorw error.

Simo::Error->throw( 
    type => 'err_type',
    msg => 'message',
    info => { some1 => 'some info1', some2 => 'some info2' }
);

This is same as

die Simo::Error->new( 
    type => 'err_type',
    msg => 'message',
    info => { some1 => 'some info1', some2 => 'some info2' }
);

AUTHOR

Yuki Kimoto, <kimoto.yuki at gmail.com>

BUGS

Please report any bugs or feature requests to bug-simo-error at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Simo-Error. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Simo::Error

You can also look for information at:

ACKNOWLEDGEMENTS

COPYRIGHT & LICENSE

Copyright 2009 Yuki Kimoto, all rights reserved.

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