From ccc1d98b87177aa6a3041e19b5c2e4ceeb22384a Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Fri, 23 Apr 2010 13:15:53 -0700 Subject: [PATCH] ovsdb: In documentation, add commas to make large numbers easier to read. --- ovsdb/OVSDB.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/ovsdb/OVSDB.py b/ovsdb/OVSDB.py index f01c45b6..6e426e57 100644 --- a/ovsdb/OVSDB.py +++ b/ovsdb/OVSDB.py @@ -193,6 +193,17 @@ class Atom: elif self.type == 'uuid': return self.value.value +# Returns integer x formatted in decimal with thousands set off by commas. +def commafy(x): + return _commafy("%d" % x) +def _commafy(s): + if s.startswith('-'): + return '-' + _commafy(s[1:]) + elif len(s) <= 3: + return s + else: + return _commafy(s[:-3]) + ',' + _commafy(s[-3:]) + class BaseType: def __init__(self, type, enum=None, @@ -253,13 +264,14 @@ class BaseType: ', '.join(literals[1:-1]), literals[-1]) elif self.minInteger != None and self.maxInteger != None: - return 'in range [%d,%d]' % (self.minInteger, self.maxInteger) + return 'in range %s to %s' % (commafy(self.minInteger), + commafy(self.maxInteger)) elif self.minInteger != None: - return 'at least %d' % self.minInteger + return 'at least %s' % commafy(self.minInteger) elif self.maxInteger != None: - return 'at most %d' % self.maxInteger + return 'at most %s' % commafy(self.maxInteger) elif self.minReal != None and self.maxReal != None: - return 'in range [%g, %g]' % (self.minReal, self.maxReal) + return 'in range %g to %g' % (self.minReal, self.maxReal) elif self.minReal != None: return 'at least %g' % self.minReal elif self.maxReal != None: -- 2.30.2