summaryrefslogtreecommitdiffstats
path: root/staptree.h
diff options
context:
space:
mode:
authorfche <fche>2005-10-07 19:09:02 +0000
committerfche <fche>2005-10-07 19:09:02 +0000
commit934845563af3c85df78c17ee4752caa100ea6157 (patch)
tree1bba25b9e1e6c035720a8115c4fb212306453a8f /staptree.h
parent9f0f2d3f93a63c91f817fda7e4e4cd02884a9084 (diff)
downloadsystemtap-steved-934845563af3c85df78c17ee4752caa100ea6157.tar.gz
systemtap-steved-934845563af3c85df78c17ee4752caa100ea6157.tar.xz
systemtap-steved-934845563af3c85df78c17ee4752caa100ea6157.zip
2005-10-07 Frank Ch. Eigler <fche@elastic.org>
PR 1366. * staptree.h (foreach_loop): Add sort_column, sort_direction fields. * parse.cxx (parse_foreach_loop): Parse "+"/"-" suffix operators. * stap.1.in, stapex.5.in: Document them. * staptree.cxx (foreach_loop print, copy): Propagate them. * translate.cxx (visit_foreach_loop): Support them. * testsuite/parseok/fifteen.stp, parseko/thirteen.stp, buildok/twentyone.stp: Test them. 2005-10-07 Frank Ch. Eigler <fche@elastic.org> PR 1366. * systemtap.samples/primes.*: Sort foreach gratuitiously.
Diffstat (limited to 'staptree.h')
-rw-r--r--staptree.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/staptree.h b/staptree.h
index fd19bd99..8bc901d5 100644
--- a/staptree.h
+++ b/staptree.h
@@ -312,6 +312,8 @@ struct foreach_loop: public statement
std::vector<symbol*> indexes;
std::string base;
vardecl* base_referent;
+ int sort_direction; // -1: decreasing, 0: none, 1: increasing
+ unsigned sort_column; // 0: value, 1..N: index
statement* block;
void print (std::ostream& o) const;