summaryrefslogtreecommitdiff
path: root/cliff/display.py
diff options
context:
space:
mode:
authorFeodor Tersin <ftersin@cloudscaling.com>2014-05-28 01:31:53 +0400
committerFeodor Tersin <ftersin@cloudscaling.com>2014-06-06 00:44:16 +0400
commite3bec7be19c8cfa8e8025e84bf0444109dcce730 (patch)
tree0312860ea55d92ec13cb6f950fa8f269c3c31383 /cliff/display.py
parent4bdf5fc90ee3e84ac675f5f26f7a0d94aacf91c5 (diff)
downloadcliff-e3bec7be19c8cfa8e8025e84bf0444109dcce730.tar.gz
Make show option compatible with Python 2.6.
Change-Id: I573ba628e1f7d4e1f6d71223e27f2301db7eb080 Closes-Bug: #1322931
Diffstat (limited to 'cliff/display.py')
-rw-r--r--cliff/display.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/cliff/display.py b/cliff/display.py
index e04fd29..74f7289 100644
--- a/cliff/display.py
+++ b/cliff/display.py
@@ -1,6 +1,16 @@
"""Application base class for displaying data.
"""
import abc
+
+try:
+ from itertools import compress
+except ImportError:
+ # for py26 compat
+ from itertools import izip
+
+ def compress(data, selectors):
+ return (d for d, s in izip(data, selectors) if s)
+
import logging
import stevedore
@@ -80,3 +90,7 @@ class DisplayCommandBase(Command):
column_names, data = self.take_action(parsed_args)
self.produce_output(parsed_args, column_names, data)
return 0
+
+ @staticmethod
+ def _compress_iterable(iterable, selectors):
+ return compress(iterable, selectors)