PPIx::EditorTools::Lexer - Simple Lexer used for syntax highlighting
Contents
Copyright And License
This software is copyright (c) 2017, 2014, 2012 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.
perl v5.34.0 2022-06-17 PPIx::EditorTools::Lexer(3pm)
Description
Go over the various interesting elements of a give piece of code or an already process PPI tree. For
each token call the user supplied 'highlighter' function with the follow values:
$css - The keyword that can be used for colouring.
$row - The row number where the token starts
$rowchar - The character within that row where the token starts
$len - The length of the token
Methods
new()
Constructor. Generally shouldn't be called with any arguments.
find( ppi => PPI::Document $ppi, highlighter => sub {...} )
find( code => Str $code, highlighter => sub ...{} )
Accepts either a "PPI::Document" to process or a string containing the code (which will be converted
into a "PPI::Document") to process. Return a reference to an array.
Name
PPIx::EditorTools::Lexer - Simple Lexer used for syntax highlighting
See Also
This class inherits from "PPIx::EditorTools". Also see App::EditorTools, Padre, and PPI.
Synopsis
PPIx::EditorTools::Lexer->new->lexer(
code => "package TestPackage;\nsub x { 1;\n",
highlighter => sub {
my ( $css, $row, $rowchar, $len ) = @_;
...
},
);
Version
version 0.21
