NAME
PPIx::EditorTools::FindVariableDeclaration - Finds where a variable was declared using PPI
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 aPPI::Document
) to process. Searches for the variable declaration and returns aPPIx::EditorTools::ReturnObject
with the declaration (PPI::Statement::Variable
) available via theelement
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.
AUTHOR
Steffen Mueller smueller@cpan.org
Mark Grimes mgrimes@cpan.org
COPYRIGHT AND LICENSE
Copyright 2008-2009 The Padre development team as listed in Padre.pm.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.