DOKK / manpages / debian 11 / libdist-zilla-perl / Dist::Zilla::Role::PPI.3pm.en
Dist::Zilla::Role::PPI(3pm) User Contributed Perl Documentation Dist::Zilla::Role::PPI(3pm)

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

version 6.017

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

  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.

  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.

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

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

Ricardo SIGNES 😏 <rjbs@cpan.org>

This software is copyright (c) 2020 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.

2020-11-04 perl v5.30.3