The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Perinci::Easy - Some easy shortcuts for Perinci

VERSION

version 0.28

SYNOPSIS

 use Perinci::Easy qw(defsub);

 # define subroutine, with metadata
 defsub
     name        => 'myfunc',
     summary     => 'Does foo to bar',
     description => '...',
     args        => {
         ...
     },
     code        => sub {
         my %args = @_;
         ...
     };

DESCRIPTION

This module provides some easy shortcuts.

FUNCTIONS

defsub

SEE ALSO

Perinci

DESCRIPTION

This module has Rinci metadata.

FUNCTIONS

None are exported by default, but they are exportable.

defsub() -> [status, msg, result, meta]

Define a subroutine.

This is just a shortcut to define subroutine and meta together so instead of:

    our %SPEC;
    $SPEC{foo} = {
        v => 1.1,
        summary => 'Blah ...',
    };
    sub foo {
        ...
    }

you write:

    defsub name=>'foo', summary=>'Blah ...',
        code=>sub {
            ...
        };

No arguments.

Return value:

Returns an enveloped result (an array). First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (result) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.

AUTHOR

Steven Haryanto <stevenharyanto@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Steven Haryanto.

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