This revision was automatically updated to reflect the committed changes. Closed by commit rL365085: [analyzer] exploded-graph-rewriter: Implement a black-and-white color scheme. (authored by dergachev, committed by ). Herald added a project: LLVM. Herald added a subscriber: llvm-commits.
Changed prior to commit: https://reviews.llvm.org/D64153?vs=207867&id=207884#toc Repository: rL LLVM CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64153/new/ https://reviews.llvm.org/D64153 Files: cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot cfe/trunk/utils/analyzer/exploded-graph-rewriter.py Index: cfe/trunk/utils/analyzer/exploded-graph-rewriter.py =================================================================== --- cfe/trunk/utils/analyzer/exploded-graph-rewriter.py +++ cfe/trunk/utils/analyzer/exploded-graph-rewriter.py @@ -384,24 +384,28 @@ # A visitor that dumps the ExplodedGraph into a DOT file with fancy HTML-based # syntax highlighing. class DotDumpVisitor(object): - def __init__(self, do_diffs, dark_mode): + def __init__(self, do_diffs, dark_mode, gray_mode): super(DotDumpVisitor, self).__init__() self._do_diffs = do_diffs self._dark_mode = dark_mode + self._gray_mode = gray_mode @staticmethod def _dump_raw(s): print(s, end='') - @staticmethod - def _dump(s): - print(s.replace('&', '&') - .replace('{', '\\{') - .replace('}', '\\}') - .replace('\\<', '<') - .replace('\\>', '>') - .replace('\\l', '<br />') - .replace('|', '\\|'), end='') + def _dump(self, s): + s = s.replace('&', '&') \ + .replace('{', '\\{') \ + .replace('}', '\\}') \ + .replace('\\<', '<') \ + .replace('\\>', '>') \ + .replace('\\l', '<br />') \ + .replace('|', '\\|') + if self._gray_mode: + s = re.sub(r'<font color="[a-z0-9]*">', '', s) + s = re.sub(r'</font>', '', s) + self._dump_raw(s) @staticmethod def _diff_plus_minus(is_added): @@ -835,6 +839,9 @@ parser.add_argument('--dark', action='store_const', dest='dark', const=True, default=False, help='dark mode') + parser.add_argument('--gray', action='store_const', dest='gray', + const=True, default=False, + help='black-and-white mode') args = parser.parse_args() logging.basicConfig(level=args.loglevel) @@ -845,7 +852,7 @@ graph.add_raw_line(raw_line) explorer = BasicExplorer() - visitor = DotDumpVisitor(args.diff, args.dark) + visitor = DotDumpVisitor(args.diff, args.dark, args.gray) explorer.explore(graph, visitor) Index: cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot =================================================================== --- cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot +++ cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot @@ -1,6 +1,11 @@ -// RUN: %exploded_graph_rewriter %s | FileCheck %s -check-prefixes=CHECK,LIGHT -// RUN: %exploded_graph_rewriter %s --dark | FileCheck %s \ -// RUN: -check-prefixes CHECK,DARK +// RUN: %exploded_graph_rewriter %s \ +// RUN: | FileCheck %s -check-prefixes=CHECK,LIGHT,COLOR +// RUN: %exploded_graph_rewriter %s --dark \ +// RUN: | FileCheck %s -check-prefixes CHECK,DARK,COLOR +// RUN: %exploded_graph_rewriter %s --gray \ +// RUN: | FileCheck %s -check-prefixes=CHECK,LIGHT,GRAY +// RUN: %exploded_graph_rewriter %s --gray --dark \ +// RUN: | FileCheck %s -check-prefixes CHECK,DARK,GRAY // FIXME: Substitution doesn't seem to work on Windows. // UNSUPPORTED: system-windows @@ -23,10 +28,12 @@ // CHECK: Node0x2 [ // CHECK-SAME: <tr><td> -// CHECK-SAME: <font color="red"><b>Bug Report Attached</b></font> +// COLOR-SAME: <font color="red"><b>Bug Report Attached</b></font> +// GRAY-SAME: <b>Bug Report Attached</b> // CHECK-SAME: </td></tr> // CHECK-SAME: <tr><td> -// CHECK-SAME: <font color="cornflowerblue"><b>Sink Node</b></font> +// COLOR-SAME: <font color="cornflowerblue"><b>Sink Node</b></font> +// GRAY-SAME: <b>Sink Node</b> // CHECK-SAME: </td></tr> Node0x2 [shape=record,label= "{
Index: cfe/trunk/utils/analyzer/exploded-graph-rewriter.py =================================================================== --- cfe/trunk/utils/analyzer/exploded-graph-rewriter.py +++ cfe/trunk/utils/analyzer/exploded-graph-rewriter.py @@ -384,24 +384,28 @@ # A visitor that dumps the ExplodedGraph into a DOT file with fancy HTML-based # syntax highlighing. class DotDumpVisitor(object): - def __init__(self, do_diffs, dark_mode): + def __init__(self, do_diffs, dark_mode, gray_mode): super(DotDumpVisitor, self).__init__() self._do_diffs = do_diffs self._dark_mode = dark_mode + self._gray_mode = gray_mode @staticmethod def _dump_raw(s): print(s, end='') - @staticmethod - def _dump(s): - print(s.replace('&', '&') - .replace('{', '\\{') - .replace('}', '\\}') - .replace('\\<', '<') - .replace('\\>', '>') - .replace('\\l', '<br />') - .replace('|', '\\|'), end='') + def _dump(self, s): + s = s.replace('&', '&') \ + .replace('{', '\\{') \ + .replace('}', '\\}') \ + .replace('\\<', '<') \ + .replace('\\>', '>') \ + .replace('\\l', '<br />') \ + .replace('|', '\\|') + if self._gray_mode: + s = re.sub(r'<font color="[a-z0-9]*">', '', s) + s = re.sub(r'</font>', '', s) + self._dump_raw(s) @staticmethod def _diff_plus_minus(is_added): @@ -835,6 +839,9 @@ parser.add_argument('--dark', action='store_const', dest='dark', const=True, default=False, help='dark mode') + parser.add_argument('--gray', action='store_const', dest='gray', + const=True, default=False, + help='black-and-white mode') args = parser.parse_args() logging.basicConfig(level=args.loglevel) @@ -845,7 +852,7 @@ graph.add_raw_line(raw_line) explorer = BasicExplorer() - visitor = DotDumpVisitor(args.diff, args.dark) + visitor = DotDumpVisitor(args.diff, args.dark, args.gray) explorer.explore(graph, visitor) Index: cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot =================================================================== --- cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot +++ cfe/trunk/test/Analysis/exploded-graph-rewriter/node_labels.dot @@ -1,6 +1,11 @@ -// RUN: %exploded_graph_rewriter %s | FileCheck %s -check-prefixes=CHECK,LIGHT -// RUN: %exploded_graph_rewriter %s --dark | FileCheck %s \ -// RUN: -check-prefixes CHECK,DARK +// RUN: %exploded_graph_rewriter %s \ +// RUN: | FileCheck %s -check-prefixes=CHECK,LIGHT,COLOR +// RUN: %exploded_graph_rewriter %s --dark \ +// RUN: | FileCheck %s -check-prefixes CHECK,DARK,COLOR +// RUN: %exploded_graph_rewriter %s --gray \ +// RUN: | FileCheck %s -check-prefixes=CHECK,LIGHT,GRAY +// RUN: %exploded_graph_rewriter %s --gray --dark \ +// RUN: | FileCheck %s -check-prefixes CHECK,DARK,GRAY // FIXME: Substitution doesn't seem to work on Windows. // UNSUPPORTED: system-windows @@ -23,10 +28,12 @@ // CHECK: Node0x2 [ // CHECK-SAME: <tr><td> -// CHECK-SAME: <font color="red"><b>Bug Report Attached</b></font> +// COLOR-SAME: <font color="red"><b>Bug Report Attached</b></font> +// GRAY-SAME: <b>Bug Report Attached</b> // CHECK-SAME: </td></tr> // CHECK-SAME: <tr><td> -// CHECK-SAME: <font color="cornflowerblue"><b>Sink Node</b></font> +// COLOR-SAME: <font color="cornflowerblue"><b>Sink Node</b></font> +// GRAY-SAME: <b>Sink Node</b> // CHECK-SAME: </td></tr> Node0x2 [shape=record,label= "{
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits