NAME Sub::Spec::Caller - Call subroutines VERSION version 0.01 SYNOPSIS use Sub::Spec::Caller qw(call_sub); my $res = call_sub( "My::Module", "my_func", {arg1=>1, arg2=>2}, {convert_datetime_objects=>1}, # call options ); DESCRIPTION This module provides one sub: call_sub. call_sub($module, $func, $args, \%opts) => $resp This is basically just a shorthand for loading the module and calling the subroutine, but with some options. It traps exceptions and return [500, ...] instead. Available options: * load => BOOL (default 1) If set to 0, do not try to load the module. Thus, you need to load the module manually beforehand. * convert_datetime_objects => BOOL (default 0) Convert datetime objects to Unix epoch time. This might be useful when passing result to JSON/YAML for other languages. For minimum overhead, you should load modules and call functions directly. call_sub() is mainly used by Sub::Spec::HTTP::Server which passes the result into JSON/YAML/etc for external purposes. SEE ALSO Sub::Spec::Runner AUTHOR Steven Haryanto COPYRIGHT AND LICENSE This software is copyright (c) 2011 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.