comparison xslscript.pl @ 9:e93b6e98b817

XSLScript: -o option. Usable for more or less safe output in makefiles.
author Maxim Dounin <mdounin@mdounin.ru>
date Wed, 26 Feb 2014 03:41:33 +0400
parents 86721b270ebb
children cb41e7c634c5
comparison
equal deleted inserted replaced
8:86721b270ebb 9:e93b6e98b817
22 use Data::Dumper qw/Dumper/; 22 use Data::Dumper qw/Dumper/;
23 23
24 ############################################################################### 24 ###############################################################################
25 25
26 my $dump = 0; 26 my $dump = 0;
27 my $output;
27 28
28 GetOptions( 29 GetOptions(
30 "output|o=s" => \$output,
29 "trace!" => \$::RD_TRACE, 31 "trace!" => \$::RD_TRACE,
30 "hint!" => \$::RD_HINT, 32 "hint!" => \$::RD_HINT,
31 "dump!" => \$dump, 33 "dump!" => \$dump,
32 ) 34 )
33 or die "oops\n"; 35 or die "oops\n";
422 $lines = <>; 424 $lines = <>;
423 } 425 }
424 426
425 my $tree = $parser->startrule($lines) 427 my $tree = $parser->startrule($lines)
426 or die "Failed to parse $ARGV.\n"; 428 or die "Failed to parse $ARGV.\n";
429 my $formatted = format_tree($tree);
430
431 if (defined $output) {
432 open STDOUT, ">", $output
433 or die "Can't open $output: $!\n";
434 }
427 435
428 if ($dump) { 436 if ($dump) {
429 print Dumper($tree); 437 print Dumper($tree);
430 exit(0); 438 exit(0);
431 } 439 }
432 440
433 print format_tree($tree); 441 print $formatted;
434 442
435 ############################################################################### 443 ###############################################################################