[Moscow.pm] комменты в конце строки

Nikolay Mishin mi на ya.ru
Вс Ноя 30 12:56:52 PST 2014


perltidy также, как и perlctitic
использует 
use PPI;
и задача, описанная выше вполне регулярная и решается 
этим модулем,
там, конечно, документация к нему не айс,
но врубиться можно
нужно двигаться вот в каком направлении

https://github.com/mishin/presentation/blob/master/ppi_add_comment_to_previous_line.pl

на вход дается строка из
https://github.com/mishin/presentation/blob/master/test_perl_code.pl

use 5.14.0;
use PPI;

#use Smart::Comments;
my $file_name = shift or die "Usage: $0 file_4_transform\n";
my $doc = PPI::Document->new($file_name);

my @comments = ();
my @statament = ();
$doc->find(
    sub {
        my ( $root, $node ) = @_;
        if ( $node->isa('PPI::Token::Comment')) {
            push @comments, $node;
        }
        if ( $node->isa('PPI::Statement')) {
            push @statament, $node;
        }
    }
);
#$module->prune( 'PPI::Token::Comment' );
## @comments
## @statament
say join "", на comments;
say join "", на statament;


понятно, что сделано для 1-й строки,
но правильно именно так,
удачи
нет времени допиливать


Подробная информация о списке рассылки Moscow-pm