| # Copyright (c) 2016 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| """Script to extract edits from clang tool output. |
| If a clang tool emits edits, then the edits should look like this: |
| extract_edits.py takes input that is concatenated from multiple tool invocations |
| and extract just the edits. In other words, given the following input: |
| extract_edits.py would emit the following output: |
| This python script is mainly needed on Windows. |
| On unix this script can be replaced with running sed as follows: |
| $ cat run_tool.debug.out \ |
| | sed '/^==== BEGIN EDITS ====$/,/^==== END EDITS ====$/{//!b};d' |
| inside_marker_lines = False |
| line = line.rstrip("\n\r") |
| if line == '==== BEGIN EDITS ====': |
| inside_marker_lines = True |
| if line == '==== END EDITS ====': |
| inside_marker_lines = False |
| if inside_marker_lines and line not in unique_lines: |
| if __name__ == '__main__': |