3627 - selective dumping a single label
Follow-up to commit 3516.
This commit is contained in:
parent
0aa6813b00
commit
bc53f46d46
|
@ -89,9 +89,11 @@ struct trace_line {
|
|||
:(before "End Globals")
|
||||
bool Hide_errors = false;
|
||||
bool Dump_trace = false;
|
||||
string Dump_label = "";
|
||||
:(before "End Setup")
|
||||
Hide_errors = false;
|
||||
Dump_trace = false;
|
||||
Dump_label = "";
|
||||
|
||||
:(before "End Types")
|
||||
// Pre-define some global constants that trace_stream needs to know about.
|
||||
|
@ -137,7 +139,9 @@ void trace_stream::newline() {
|
|||
string curr_contents = curr_stream->str();
|
||||
if (!curr_contents.empty()) {
|
||||
past_lines.push_back(trace_line(curr_depth, trim(curr_label), curr_contents)); // preserve indent in contents
|
||||
if (Dump_trace || (!Hide_errors && curr_label == "error"))
|
||||
if ((!Hide_errors && curr_label == "error")
|
||||
|| Dump_trace
|
||||
|| (!Dump_label.empty() && curr_label == Dump_label))
|
||||
cerr << curr_label << ": " << curr_contents << '\n';
|
||||
}
|
||||
delete curr_stream;
|
||||
|
|
|
@ -122,9 +122,11 @@ body { font-size: 12pt; font-family: monospace; color: #eeeeee; background-color
|
|||
<span class="Delimiter">:(before "End Globals")</span>
|
||||
<span class="Normal">bool</span> Hide_errors = <span class="Constant">false</span><span class="Delimiter">;</span>
|
||||
<span class="Normal">bool</span> Dump_trace = <span class="Constant">false</span><span class="Delimiter">;</span>
|
||||
string Dump_label = <span class="Constant">""</span><span class="Delimiter">;</span>
|
||||
<span class="Delimiter">:(before "End Setup")</span>
|
||||
Hide_errors = <span class="Constant">false</span><span class="Delimiter">;</span>
|
||||
Dump_trace = <span class="Constant">false</span><span class="Delimiter">;</span>
|
||||
Dump_label = <span class="Constant">""</span><span class="Delimiter">;</span>
|
||||
|
||||
<span class="Delimiter">:(before "End Types")</span>
|
||||
<span class="Comment">// Pre-define some global constants that trace_stream needs to know about.</span>
|
||||
|
@ -170,7 +172,9 @@ Dump_trace = <span class="Constant">false</span><span class="Delimiter">;</span>
|
|||
string curr_contents = curr_stream<span class="Delimiter">-></span>str<span class="Delimiter">();</span>
|
||||
<span class="Normal">if</span> <span class="Delimiter">(</span>!curr_contents<span class="Delimiter">.</span>empty<span class="Delimiter">())</span> <span class="Delimiter">{</span>
|
||||
past_lines<span class="Delimiter">.</span>push_back<span class="Delimiter">(</span>trace_line<span class="Delimiter">(</span>curr_depth<span class="Delimiter">,</span> trim<span class="Delimiter">(</span>curr_label<span class="Delimiter">),</span> curr_contents<span class="Delimiter">));</span> <span class="Comment">// preserve indent in contents</span>
|
||||
<span class="Normal">if</span> <span class="Delimiter">(</span>Dump_trace || <span class="Delimiter">(</span>!Hide_errors && curr_label == <span class="Constant">"error"</span><span class="Delimiter">))</span>
|
||||
<span class="Normal">if</span> <span class="Delimiter">((</span>!Hide_errors && curr_label == <span class="Constant">"error"</span><span class="Delimiter">)</span>
|
||||
|| Dump_trace
|
||||
|| <span class="Delimiter">(</span>!Dump_label<span class="Delimiter">.</span>empty<span class="Delimiter">()</span> && curr_label == Dump_label<span class="Delimiter">))</span>
|
||||
cerr << curr_label << <span class="Constant">": "</span> << curr_contents << <span class="cSpecial">'\n'</span><span class="Delimiter">;</span>
|
||||
<span class="Delimiter">}</span>
|
||||
<span class="Normal">delete</span> curr_stream<span class="Delimiter">;</span>
|
||||
|
|
Loading…
Reference in New Issue