Perinci::Sub::Wrapper - A multi-purpose subroutine wrapping framework

Perinci::Sub::Wrapper (PSW for short) is an extensible subroutine wrapping framework. It generates code to do stuffs before calling your subroutine, like validate arguments, convert arguments from positional/array to named/hash or vice versa, etc; as...

PERLANCAR/Perinci-Sub-Wrapper-0.79 - 04 Sep 2015 00:32:38 GMT - Search in distribution

Perinci::Sub::Wrapper::Patch::HandlePHPArray - Convert {} to [] or vice versa to match functions' expectations

This module patches Perinci::Sub::Wrapper so the generated function wrapper code can convert argument "{}" to "[]" when function expects argument to be an array, or vice versa "[]" to "{}" when function expects a hash argument. This can help if funct...

PERLANCAR/Perinci-Sub-Wrapper-Patch-HandlePHPArray-0.03 - 18 Aug 2015 11:34:45 GMT - Search in distribution

wrap-with-perinci-sub-wrapper - Wrap subroutine with Perinci::Sub::Wrapper

This script is useful for testing Perinci::Sub::Wrapper. You specify input Rinci metadata either using "--meta" or using "--url" to get it from Riap URL. You then can show the code generated by the wrapper using "--show-code" ("-c"). Or, you can call...

PERLANCAR/App-PerinciUtils-0.06 - 03 Sep 2015 07:49:36 GMT - Search in distribution

Rinci - Language-neutral metadata for your code entities

PERLANCAR/Rinci-1.1.78 - 02 Sep 2015 18:55:48 GMT - Search in distribution

Data::Sah - Fast and featureful data structure validation

This module, Data::Sah, implements compilers for producing Perl and JavaScript validators, as well as translatable human description text from Sah schemas. Compiler approach is used instead of interpreter for faster speed. The generated validator cod...

PERLANCAR/Data-Sah-0.74 - 18 Oct 2015 00:06:05 GMT - Search in distribution

Test::Rinci - Test Rinci metadata

This module performs various checks on a module's Rinci metadata. It is recommended that you include something like "release-rinci.t" in your distribution if you add metadata to your code. If you use Dist::Zilla to build your distribution, there is D...

PERLANCAR/Test-Rinci-0.10 - 06 Sep 2015 09:13:49 GMT - Search in distribution

Perinci::Access - Wrapper for Perinci Riap clients

This module provides a convenient wrapper to select appropriate Riap client (Perinci::Access::*) objects based on URI scheme. /Foo/Bar/ -> Perinci::Access::Schemeless pl:/Foo/Bar -> Perinci::Access::Perl riap://perl/Foo/Bar/ -> Perinci::Access::Perl ...

PERLANCAR/Perinci-Access-0.43 - 03 Sep 2015 11:17:56 GMT - Search in distribution

Params::Sah - Validate method/function parameters using Sah schemas

This module provides a way for functions to validate their parameters using Sah schemas. The interface is rather different than Params::Validate because it returns a validator *code* instead of directly validating parameters. The returned validator c...

PERLANCAR/Params-Sah-0.04 - 22 Apr 2015 11:36:31 GMT - Search in distribution

Perinci::Object - Object-oriented interface for Rinci metadata

Rinci works using pure data structures, but sometimes it's convenient to have an object-oriented interface (wrapper) for those data. This module provides just that....

PERLANCAR/Perinci-Object-0.24 - 03 Sep 2015 12:09:07 GMT - Search in distribution

Proc::Govern - Run child process and govern its various aspects

Proc::Govern is a child process manager. It is meant to be a convenient bundle (a single parent/monitoring process) for functionalities commonly needed when managing a child process. It comes with a command-line interface, govproc. Background story: ...

PERLANCAR/Proc-Govern-0.17 - 04 Sep 2015 00:56:17 GMT - Search in distribution

Exporter::Rinci - A simple wrapper for Exporter for modules with Rinci metadata

Exporter::Rinci is a simple wrapper for Exporter. Before handing out control to Exporter's import(), it will look at the exporting module's @EXPORT, @EXPORT_OK, and %EXPORT_TAGS and if they are empty will fill them out with data from Rinci metadata (...

PERLANCAR/Exporter-Rinci-0.01 - 23 Oct 2015 12:55:13 GMT - Search in distribution

Perinci::Exporter - Metadata-aware Exporter

Perinci::Exporter is an exporter which can utilize information from Rinci metadata. If your package has Rinci metadata, consider using this exporter for convenience and flexibility. Features of this module: * List exportable routines from Rinci metad...

PERLANCAR/Perinci-Exporter-0.07 - 29 Sep 2015 05:02:00 GMT - Search in distribution

Perinci::Sub::Util - Helper when writing functions

PERLANCAR/Perinci-Sub-Util-0.42 - 04 Sep 2015 00:31:11 GMT - Search in distribution

Perinci::Examples - Various examples of Rinci metadata

This distribution contains an odd mix of various functions, variables, and other code entities, along with their Rinci metadata. Mostly used for testing Rinci specification and the various Perinci modules. Example scripts are put in a separate distri...

PERLANCAR/Perinci-Examples-0.63 - 28 Nov 2015 10:06:13 GMT - Search in distribution

Perinci::Access::Lite - A lightweight Riap client library

This module is a lightweight alternative to Perinci::Access. It has less prerequisites but does fewer things. The things it supports: * Local (in-process) access to Perl modules and functions Currently only "call", "meta", and "list" actions are impl...

PERLANCAR/Perinci-Access-Lite-0.11 - 03 Sep 2015 11:21:33 GMT - Search in distribution

Perinci::CmdLine::Easy - A simple interface to run a subroutine as command-line app

NOTE: This is an experimental module. Perinci::CmdLine::Easy is a thin wrapper for Perinci::CmdLine and is meant to be a gentler or easier alternative to Perinci::CmdLine. You do not need to know any Rinci or Riap concepts, or provide your own metada...

PERLANCAR/Perinci-CmdLine-Easy-1.17 - 03 Sep 2015 11:31:00 GMT - Search in distribution

Perinci::Sub::CoerceArgs - Coerce arguments

I expect this to be a temporary solution until Data::Sah or Perinci::Sub::Wrapper has this functionality....

PERLANCAR/Perinci-Sub-CoerceArgs-0.13 - 22 Oct 2015 09:33:49 GMT - Search in distribution

Perinci::CmdLine::Server - Create Perinci::CmdLine::Classic object and some functions to access it in a Perl package

Currently, Perinci::CmdLine::Classic-based CLI applications have a perceptible startup overhead (between 0.15-0.35s or even more, depending on your hardware, those numbers are for 2011-2013 PC/laptop hardware). Some of the cause of the overhead is su...

PERLANCAR/Perinci-CmdLine-Server-0.06 - 03 Sep 2015 11:35:12 GMT - Search in distribution

Perinci::CmdLine::Base - Base class for Perinci::CmdLine{::Classic,::Lite}

PERLANCAR/Perinci-CmdLine-Lite-1.40 - 27 Nov 2015 10:08:14 GMT - Search in distribution

Getopt::Long::Complete - A drop-in replacement for Getopt::Long, with shell tab completion

This module provides a quick and easy way to add shell tab completion feature to your scripts, including scripts already written using the venerable Getopt::Long module. Currently bash and tcsh are directly supported; fish and zsh are also supported ...

PERLANCAR/Getopt-Long-Complete-0.25 - 30 Apr 2015 07:31:29 GMT - Search in distribution