diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2003-07-24 08:53:43 +0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2003-07-24 08:53:43 +0000 |
commit | 1a7468a57a11288a007c40d50ed28718d757a546 (patch) | |
tree | 175c3f3819298006548f4f7d00f4c98ce8135c6b /src/util.cc | |
parent | b75719b98457c61857689ab135559a17034dd8ec (diff) |
* Debug levels. Use `--verbose / -v LEVEL' to display only messages
up to the given verbosity levels. These currently are:
lvlError = 0,
lvlNormal = 5,
lvlDebug = 10,
lvlDebugMore = 15
although only lvlError and lvlDebug are actually used right now.
Diffstat (limited to 'src/util.cc')
-rw-r--r-- | src/util.cc | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/util.cc b/src/util.cc index a16643022..8510bb7a6 100644 --- a/src/util.cc +++ b/src/util.cc @@ -130,13 +130,20 @@ void deletePath(string path) } +Verbosity verbosity = lvlNormal; + static int nestingLevel = 0; -Nest::Nest(bool nest) +Nest::Nest(Verbosity level, const format & f) { - this->nest = nest; - if (nest) nestingLevel++; + if (level > verbosity) + nest = false; + else { + msg(level, f); + nest = true; + nestingLevel++; + } } @@ -146,8 +153,9 @@ Nest::~Nest() } -void msg(const format & f) +void msg(Verbosity level, const format & f) { + if (level > verbosity) return; string spaces; for (int i = 0; i < nestingLevel; i++) spaces += "| "; @@ -157,7 +165,7 @@ void msg(const format & f) void debug(const format & f) { - msg(format("debug: %1%") % f.str()); + msg(lvlDebug, format("debug: %1%") % f.str()); } |