Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Tools / Scripts / webkitpy / formatter / fix_double_quote_strings.py
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 """
6 A 2to3 fixer that converts all string literals to use double quotes.
7
8 Strings that contain double quotes will not be modified. Prefixed string
9 literals will also not be modified. This affects both single-quoted strings
10 and triple-single-quoted strings.
11
12 """
13
14 from lib2to3.fixer_base import BaseFix
15 from lib2to3.pgen2 import token
16
17
18 class FixDoubleQuoteStrings(BaseFix):
19
20     explicit = True
21     _accept_type = token.STRING
22
23     def match(self, node):
24         res = node.value.startswith("'") and '"' not in node.value[1:-1]
25         return res
26
27     def transform(self, node, results):
28         node.value = node.value.replace("'", '"')
29         node.changed()