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

        use Data::Seek;
    
        my $hash   = {...};
        my $seeker = Data::Seek->new(data => $hash);
        my $result = $seeker->search('*');
    
        $result->data;

DESCRIPTION

    Data::Seek is a module for traversing complex data structures. This
    module allows you to select specific node(s) in a hierarchical data
    structure using a criteria. A criteria is an expression consisting of
    one or more criterion. A criterion is the part of the criteria that is
    used to select node(s) to be returned in the result. Data::Seek is akin
    to Data::Dpath but with fewer features and a simple node selection
    syntax. Data::Seek node traversal is extremely fast, and it can throw
    exception objects which explain, in detail, why a search failed. This
    is very useful internally, and externally when processing foreign data
    structures where you need to provide detailed errors explaining how to
    resolve the missing or malformed data nodes. For more information on
    the underlying concepts, please see Data::Seek::Concepts.

        $seeker->cache;
        $seeker->cache(1);

    Encode the data structure and cache the result. Allows multiple queries
    to execute faster. Caching is disabled by default.

        $seeker->data;
        $seeker->data(Data::Seek::Data->new(...));

    The data structure to be introspected, must be a hash reference,
    blessed or not, which defaults to or becomes a Data::Seek::Data object.

        $seeker->ignore;
        $seeker->ignore(1);

    Bypass exceptions thrown when a criterion finds an unknown or invalid
    node in the data structure.

        my @criteria = ('id', 'person.name.*');
        my $result   = $seeker->search(@criteria);

    Prepare a search object to use the supplied criteria and return a
    result object. Introspection is triggered when the result object is
    enacted. See Data::Seek::Search::Result for usage information.

POD ERRORS

    Hey! The above document had some coding errors, which are explained
    below:

    Around line 27:

      Unknown directive: =attr

    Around line 35:

      Unknown directive: =attr

    Around line 43:

      Unknown directive: =attr

    Around line 51:

      Unknown directive: =method