Provided by: libdist-zilla-perl_5.043-1_all bug

NAME

       Dist::Zilla::Role::PPI - a role for plugins which use PPI

VERSION

       version 5.043

DESCRIPTION

       This role provides some common utilities for plugins which use PPI.

METHODS

   ppi_document_for_file
         my $document = $self->ppi_document_for_file($file);

       Given a dzil file object (anything that does Dist::Zilla::Role::File), this method returns
       a new PPI::Document for that file's content.

       Internally, this method caches these documents. If multiple plugins want a document for
       the same file, this avoids reparsing it.

   save_ppi_document_to_file
         my $document = $self->save_ppi_document_to_file($document,$file);

       Given a PPI::Document and a dzil file object (anything that does Dist::Zilla::Role::File),
       this method saves the serialized document in the file.

       It also updates the internal PPI document cache with the new document.

   document_assigns_to_variable
         if( $self->ppi_document_for_file($document, '$FOO')) { ... }

       This method returns true if the document assigns to the given variable (the sigil must be
       included).

AUTHOR

       Ricardo SIGNES <rjbs@cpan.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2016 by Ricardo SIGNES.

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