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

NAME

PPIx::EditorTools::FindVariableDeclaration - Finds where a variable was declared using PPI

VERSION

version 0.11

SYNOPSIS

  # finds declaration of variable at cursor
  my $declaration = PPIx::EditorTools::FindVariableDeclaration->new->find(
    code =>
      "package TestPackage;\nuse strict;\nBEGIN {
        $^W = 1;
}\nmy \$x=1;\n\$x++;"
    line => 5,
    column => 2,
  );
  my $location = $declaration->element->location;

DESCRIPTION

Finds the location of a variable declaration.

METHODS

new()

Constructor. Generally shouldn't be called with any arguments.

find( ppi => PPI::Document $ppi, line => $line, column => $column ) =item find( code => Str $code, line => $line, column => $column )

Accepts either a PPI::Document to process or a string containing the code (which will be converted into a PPI::Document) to process. Searches for the variable declaration and returns a PPIx::EditorTools::ReturnObject with the declaration (PPI::Statement::Variable) available via the element accessor.

Croaks with a "no token" exception if no token is found at the location. Croaks with a "no declaration" exception if unable to find the declaration.

SEE ALSO

This class inherits from PPIx::EditorTools. Also see App::EditorTools, Padre, and PPI.

AUTHORS

  • Steffen Mueller smueller@cpan.org

  • Repackaged by Mark Grimes mgrimes@cpan.org

  • Ahmad M. Zawawi <ahmad.zawawi@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by The Padre development team as listed in Padre.pm.

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