summaryrefslogtreecommitdiff
path: root/utils/cli
diff options
context:
space:
mode:
Diffstat (limited to 'utils/cli')
-rw-r--r--utils/cli/ledgersmb_cli.pl22
1 files changed, 20 insertions, 2 deletions
diff --git a/utils/cli/ledgersmb_cli.pl b/utils/cli/ledgersmb_cli.pl
index 4bdd0d5f..d6fdac7c 100644
--- a/utils/cli/ledgersmb_cli.pl
+++ b/utils/cli/ledgersmb_cli.pl
@@ -82,12 +82,15 @@ $syntax = << '_END_SYNTAX_';
startrule : instruction
_END_SYNTAX_
+
$::RD_HINT = 1;
$::RD_ERRORS = 1; # Make sure the parser dies when it encounters an error
$::RD_WARN = 1; # Enable warnings. This will warn on unused rules &c.`
#$::RD_TRACE = 1;
-my $stackref;
my @loopstack;
+my $loopindex;
+my $stackref;
+my @control_stack;
push @loopstack, $form;
@@ -122,8 +125,18 @@ sub call_and_assign {
sub push_loop {
my $key = shift;
+ my $is_hash = 0;
+ if (ref($stackref->{$key}) =~ /HASH/){
+ $is_hash = 1;
+ elsif (ref ($stackref->{$key}) !~ /ARRAY/){
+ print STDERR "Warning: Must loop through array or hash.";
+ }
push @loopstack, \$stackref->{$key};
- $stackref = \$loopstack[$#loopstack];
+ push @controlstack,
+ { "key" => $key,
+ 'index' => 0,
+ 'linenum' => $#linestack,
+ is_hash => $is_hash };
}
sub pop_loop {
@@ -152,7 +165,12 @@ sub load_mod {
my $scriptparse = new Parse::RecDescent($syntax);
+
+$loopindex = 0;
+my @linestack;
+
while ($line = <>){
+ push @linestack, $line;
if ($if_count){
if ($line =~ /^\s*IF\s/){
++$if_count;
le='width: -nan%;'/> -rw-r--r--tags/a8/e8/20130512171817.GA9113@radis.cristau.org/debian0
-rw-r--r--tags/a8/e8/20130512171817.GA9113@radis.cristau.org/signed0
-rw-r--r--tags/a8/e8/20141231054200.4E2A620443@lb.letsgo.dk/sys0
-rw-r--r--tags/a8/e8/20141231054200.4E2A620443@lb.letsgo.dk/unread0
-rw-r--r--tags/a8/e8/20160825020002.82B8324B@lxp5.free-owl.de/sys0
-rw-r--r--tags/a8/e8/20160825020002.82B8324B@lxp5.free-owl.de/unread0
-rw-r--r--tags/a8/e8/20180824210001.38EF41CD407@lxp5.free-owl.de/sys0
-rw-r--r--tags/a8/e8/20180824210001.38EF41CD407@lxp5.free-owl.de/unread0
-rw-r--r--tags/a8/e8/45A30714.6000206@hogyros.de/debian0
-rw-r--r--tags/a8/e8/46a038f90909170751x1aa510ffo12208b984ca4add6@mail.gmail.com/sugar0
-rw-r--r--tags/a8/e8/46a038f90909170751x1aa510ffo12208b984ca4add6@mail.gmail.com/unread0
-rw-r--r--tags/a8/e8/569A68D5.8050503@jones.dk/inbox0
-rw-r--r--tags/a8/e8/569A68D5.8050503@jones.dk/old0
-rw-r--r--tags/a8/e8/569A68D5.8050503@jones.dk/signed0
-rw-r--r--tags/a8/e8/E1C932d-0001kt-00@chiark.greenend.org.uk/debian0
-rw-r--r--tags/a8/e8/E1C932d-0001kt-00@chiark.greenend.org.uk/inbox0
-rw-r--r--tags/a8/e8/E1C932d-0001kt-00@chiark.greenend.org.uk/old0
-rw-r--r--tags/a8/e8/E1jE40W-0002fD-5s@respighi.debian.org/debian0
-rw-r--r--tags/a8/e8/E1jE40W-0002fD-5s@respighi.debian.org/inbox0
-rw-r--r--tags/a8/e8/E1jE40W-0002fD-5s@respighi.debian.org/killed0
-rw-r--r--tags/a8/e8/E1jE40W-0002fD-5s@respighi.debian.org/unread0
-rw-r--r--tags/a8/e8/E1mYLBV-0002NN-ME@respighi.debian.org/debian0
-rw-r--r--tags/a8/e8/E1mYLBV-0002NN-ME@respighi.debian.org/inbox0
-rw-r--r--tags/a8/e8/E1mYLBV-0002NN-ME@respighi.debian.org/killed0
-rw-r--r--tags/a8/e8/E1mYLBV-0002NN-ME@respighi.debian.org/unread0
-rw-r--r--tags/a8/e8/handler.s.C.151836736814323.transcript@bugs.debian.org/debian0
-rw-r--r--tags/a8/e8/handler.s.C.151836736814323.transcript@bugs.debian.org/killed0
-rw-r--r--tags/a8/e8/handler.s.C.151836736814323.transcript@bugs.debian.org/unread0
-rw-r--r--tags/a8/e8/handler.s.C.158997226318771.transcript@bugs.debian.org/debian0
-rw-r--r--tags/a8/e8/handler.s.C.158997226318771.transcript@bugs.debian.org/inbox0
-rw-r--r--tags/a8/e8/handler.s.C.158997226318771.transcript@bugs.debian.org/killed0
-rw-r--r--tags/a8/e8/handler.s.C.158997226318771.transcript@bugs.debian.org/unread0
41 files changed, 0 insertions, 0 deletions