Changed truncate_entries so that --head and --tail can be used at the
same time.
This commit is contained in:
parent
547be3056d
commit
d0997fa821
3 changed files with 13 additions and 13 deletions
4
main.cc
4
main.cc
|
|
@ -78,9 +78,7 @@ chain_xact_handlers(const std::string& command,
|
|||
if (config.head_entries || config.tail_entries)
|
||||
ptrs.push_back(formatter =
|
||||
new truncate_entries(formatter,
|
||||
config.head_entries ?
|
||||
config.head_entries :
|
||||
config.tail_entries,
|
||||
config.head_entries,
|
||||
config.tail_entries));
|
||||
|
||||
// filter_transactions will only pass through transactions
|
||||
|
|
|
|||
14
walk.cc
14
walk.cc
|
|
@ -85,18 +85,20 @@ void truncate_entries::flush()
|
|||
}
|
||||
|
||||
bool print = false;
|
||||
if (tailwise) {
|
||||
if (count > 0 && l - i <= count)
|
||||
print = true;
|
||||
else if (count < 0 && l - i > - count)
|
||||
print = true;
|
||||
} else {
|
||||
if (head_count) {
|
||||
if (count > 0 && i < count)
|
||||
print = true;
|
||||
else if (count < 0 && i >= - count)
|
||||
print = true;
|
||||
}
|
||||
|
||||
if (! print && tail_count) {
|
||||
if (count > 0 && l - i <= count)
|
||||
print = true;
|
||||
else if (count < 0 && l - i > - count)
|
||||
print = true;
|
||||
}
|
||||
|
||||
if (print)
|
||||
item_handler<transaction_t>::operator()(**x);
|
||||
}
|
||||
|
|
|
|||
8
walk.h
8
walk.h
|
|
@ -147,16 +147,16 @@ class ignore_transactions : public item_handler<transaction_t>
|
|||
|
||||
class truncate_entries : public item_handler<transaction_t>
|
||||
{
|
||||
int count;
|
||||
bool tailwise;
|
||||
int head_count;
|
||||
int tail_count;
|
||||
|
||||
transactions_list xacts;
|
||||
|
||||
public:
|
||||
truncate_entries(item_handler<transaction_t> * handler,
|
||||
int _count, bool _tailwise = false)
|
||||
int _head_count, int _tail_count)
|
||||
: item_handler<transaction_t>(handler),
|
||||
count(_count), tailwise(_tailwise) {}
|
||||
head_count(_head_count), tail_count(_tail_count) {}
|
||||
|
||||
virtual void flush();
|
||||
virtual void operator()(transaction_t& xact) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue