Scroll to navigation

Devel::REPL::Plugin::MultiLine::PPI(3pm) User Contributed Perl Documentation Devel::REPL::Plugin::MultiLine::PPI(3pm)
 

NAME

Devel::REPL::Plugin::MultiLine::PPI - read lines until all blocks are closed

VERSION

version 1.003026

SYNOPSIS

    use Devel::REPL;
    my $repl = Devel::REPL->new;
    $repl->load_plugin('LexEnv');
    $repl->load_plugin('History');
    $repl->load_plugin('MultiLine::PPI');
    $repl->run;

DESCRIPTION

Plugin that will collect lines until you have no unfinished structures. This lets you write subroutines, "if" statements, loops, etc. more naturally.
For example, without a MultiLine plugin,
    $ my $x = 3;
    3
    $ if ($x == 3) {
will throw a compile error, because that "if" statement is incomplete. With a MultiLine plugin,
    $ my $x = 3;
    3
    $ if ($x == 3) {
    > print "OH NOES!"
    > }
    OH NOES
    1
you may write the code across multiple lines, such as in "irb" and "python".
This module uses PPI. This plugin is named "MultiLine::PPI" because someone else may conceivably implement similar behavior some other less dependency-heavy way.

SEE ALSO

"Devel::REPL"

AUTHOR

Shawn M Moore, "<sartak at gmail dot com>"

COPYRIGHT AND LICENSE

Copyright (C) 2007 by Shawn M Moore
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2014-07-16 perl v5.18.2