NAME
    JSON::JOM::Plugins::JsonPath - search for nodes using JSONPath.

SYNOPSIS
     use JSON::JOM;
 
     my $jom = to_jom({
       test => {
         foo  => [{quux=>1},{quux=>2},{quux=>3}],
         bar  => [{quux=>4},{quux=>5},{quux=>6}],
       },
     });
 
     my @nodes = $jom->{test}->findNodes("\$[*][*]");
     foreach my $node (@nodes)
     {
       if ($node->matchesPath("\$[*]['bar'][*]"))
       {
         print "bar has object with quux=".$node->{quux}."\n";
       }
     }

DESCRIPTION
    This JOM plugin adds the following method to JOM objects and arrays:

    *   "findNodes" - search for descendant nodes using a JSONPath path.

    *   "matchesPath" - check to see if a node matches a search path.

    Note that the core JOM functionality includes a "nodePath" method to get
    a canonical JSONPath path for each node.

BUGS
    Please report any bugs to <http://rt.cpan.org/>.

SEE ALSO
    JSON::JOM, JSON::JOM::Plugins.

    JSON::Path.

AUTHOR
    Toby Inkster <tobyink@cpan.org>.

COPYRIGHT
    Copyright 2010 Toby Inkster

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

