Skip to content

muir/Eval-LineNumbers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME
    Eval::LineNumbers - Add line numbers to heredoc blocks that contain perl
    source code

SYNOPSIS
     use Eval::LineNumbers qw(eval_line_numbes);

     eval eval_line_numbers(<<END_HEREIS);
       code
     END_HEREIS

     eval eval_line_numbers($caller_level, $code)

DESCRIPTION
    Add a "#line "this-file" 392" comment to heredoc/hereis text that is
    going to be eval'ed so that error messages will point back to the right
    place.

    Please note: when you embed "\n" in your code, it gets expanded in
    double-quote hereis documents so it will mess up your line numbering.
    Use "\\n" instead when you can.

  Caller Level Example
    The second form of eval_line_numbers where a caller-level is provided is
    for the situation where the code is generated in one place and eval'ed
    in another place. The caller level should be the number of stack levels
    between where the heredoc was created and where it is eval'ed.

     sub example {
       return <<END_HEREIS
         code
    END_HEREIS
     }

     eval eval_line_numbers(1, example())

LICENSE
    Copyright (C) 2009 David Muir Sharnoff. Copyright (C) 2013 Google, Inc.

    This package may be used and redistributed under the terms of either the
    Artistic 2.0 or LGPL 2.1 license.

About

Eval::LineNumbers perl module on CPAN

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages