Provided by: libb-hooks-parser-perl_0.12-1build1_amd64 bug

NAME

       B::Hooks::Parser - Interface to perl's parser variables

DESCRIPTION

       This module provides an API for parts of the perl parser. It can be used to modify code
       while it's being parsed.

Perl API

   setup()
       Does some initialization work. This must be called before any other functions of this
       module if you intend to use "set_linestr". Returns an id that can be used to disable the
       magic using "teardown".

   teardown($id)
       Disables magic registed using "setup".

   get_linestr()
       Returns the line the parser is currently working on, or undef if perl isn't parsing
       anything right now.

   get_linestr_offset()
       Returns the position within the current line to which perl has already parsed the input,
       or -1 if nothing is being parsed currently.

   set_linestr($string)
       Sets the line the perl parser is currently working on to $string.

       Note that perl won't notice any changes in the line string after the position returned by
       "get_linestr_offset".

       Throws an exception when nothing is being compiled.

   inject($string)
       Convenience function to insert a piece of perl code into the current line string (as
       returned by "get_linestr") at the current offset (as returned by "get_linestr_offset").

   get_lex_stuff()
       Returns the string of additional stuff resulting from recent lexing that is being held
       onto by the lexer.  For example, the content of a quoted string goes here.  Returns
       "undef" if there is no such stuff.

   clear_lex_stuff()
       Discard the string of additional stuff resulting from recent lexing that is being held
       onto by the lexer.

C API

       The following functions work just like their equivalent in the Perl API, except that they
       can't handle embedded NUL bytes in strings.

   hook_op_check_id hook_parser_setup (void)
   void hook_parser_teardown (hook_op_check_id id)
   const char *hook_parser_get_linestr (pTHX)
   IV hook_parser_get_linestr_offset (pTHX)
   void hook_parser_set_linestr (pTHX_ const char *new_value)
   char *hook_parser_get_lex_stuff (pTHX)
   void hook_parser_clear_lex_stuff (pTHX)

AUTHOR

       Florian Ragwitz <rafl@debian.org>

COPYRIGHT AND LICENSE

       Copyright (c) 2008  Florian Ragwitz

       This module is free software.

       You may distribute this code under the same terms as Perl itself.