NAME

App::PipeFilter::JsonPath - return JSON::Path-specified fields from a JSON stream

VERSION

version 0.003

SYNOPSIS

Here is the jsonpath(1) pipeline filter.

#!/usr/bin/perl
use App::PipeFilter::JsonPath;
exit App::PipeFilter::JsonPath->new_with_options()->run();

DESCRIPTION

App::PipeFilter::JsonPath implements the jsonpath(1) pipeline filter. It's modeled after the UNIX cut(1) utility, but output fields are specified by JSON::Path expressions.

This class subclasses App::PipeFilter::Generic::Json.

PUBLIC ATTRIBUTES

o

The o() attribute specifies one or more fields to extract from input and write to output. Members are JSON::Path expressions. All other fields will be discarded. MooseX::Getopt sets o() to the values of the -o options from the command line.

PUBLIC METHODS

transform

The transform() method iterates over its input and returns new records composed of only the fields described by the JSON::Path expressions in o().

SEE ALSO

You may read this module's implementation in its entirety at

perldoc -m App::PipeFilter::JsonPath

App::PipeFilter::JsonCut is a similar, faster, and simpler implementation that works best with flat JSON objects. jcut(1) should be used whenever possible.

App::PipeFilter has top-level documentation including a table of contents for all the libraries and utilities included in the project.

BUGS

https://rt.cpan.org/Public/Dist/Display.html?Name=App-PipeFilter

REPOSITORY

https://github.com/rcaputo/app-pipefilter

COPYRIGHT AND LICENSE

App::PipeFilter::JsonPath is Copyright 2011 by Rocco Caputo. All rights are reserved. App::PipeFilter::JsonPath is released under the same terms as Perl itself.