Provided by: libcompiler-lexer-perl_0.23-3build1_amd64
NAME
Compiler::Lexer - Lexical Analyzer for Perl5
SYNOPSIS
use Compiler::Lexer; use Data::Dumper; my $filename = $ARGV[0]; open my $fh, '<', $filename or die "Cannot open $filename: $!"; my $script = do { local $/; <$fh> }; my $lexer = Compiler::Lexer->new($filename); my $tokens = $lexer->tokenize($script); print Dumper $tokens; my $modules = $lexer->get_used_modules($script); print Dumper $modules;
METHODS
my $lexer = Compiler::Lexer->new($options); create new instance. You can create object from $options in hash reference. options list filename verbose : includes token of Pod, Comment and WhiteSpace $lexer->tokenize($script); get token objects includes parameter of 'name' or 'type' or 'line' and so on. This method requires perl source code in string. $lexer->set_library_path(['path1', 'path2' ...]) set libraries path for reading recursively. Default paths are @INC. $lexer->recursive_tokenize($script) get hash reference like { 'module_nameA' => [], 'module_nameB' => [] ... }. This method requires per source code in string. $lexer->get_used_modules($script); get names of used module. This method requires perl source code in string.
AUTHOR
Masaaki Goshima (goccy) <goccy(at)cpan.org>
CONTRIBUTORS
tokuhirom: Tokuhiro Matsuno
LICENSE AND COPYRIGHT
Copyright (c) 2013, Masaaki Goshima (goccy). All rights reserved. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.