| Left: | ||
| Right: |
| LEFT | RIGHT |
|---|---|
| 1 # This file is part of the Adblock Plus website, | 1 # This file is part of the Adblock Plus website, |
| 2 # Copyright (C) 2006-2015 Eyeo GmbH | 2 # Copyright (C) 2006-2015 Eyeo GmbH |
| 3 # | 3 # |
| 4 # Adblock Plus is free software: you can redistribute it and/or modify | 4 # Adblock Plus is free software: you can redistribute it and/or modify |
| 5 # it under the terms of the GNU General Public License version 3 as | 5 # it under the terms of the GNU General Public License version 3 as |
| 6 # published by the Free Software Foundation. | 6 # published by the Free Software Foundation. |
| 7 # | 7 # |
| 8 # Adblock Plus is distributed in the hope that it will be useful, | 8 # Adblock Plus is distributed in the hope that it will be useful, |
| 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 21 parsed = [] | 21 parsed = [] |
| 22 for key, value in interface_items.iteritems(): | 22 for key, value in interface_items.iteritems(): |
| 23 if "(" in key: | 23 if "(" in key: |
| 24 # Item is a method | 24 # Item is a method |
| 25 match = re.match(r"^\s*(%s)\s+(\S+)\s*\(\s*([^\)]*)\s*\)\s*$" % TYPE_REGEX P, key) | 25 match = re.match(r"^\s*(%s)\s+(\S+)\s*\(\s*([^\)]*)\s*\)\s*$" % TYPE_REGEX P, key) |
| 26 if not match: | 26 if not match: |
| 27 warnings.warn("Skipped malformed method: '%s'" % key) | 27 warnings.warn("Skipped malformed method: '%s'" % key) |
| 28 continue | 28 continue |
| 29 return_type, property_name, argument_string = match.groups() | 29 return_type, property_name, argument_string = match.groups() |
| 30 arguments = [] | 30 arguments = [] |
| 31 if "version" in value: | |
| 32 property_version = value["version"] | |
| 33 else: | |
| 34 property_version = "" | |
|
Wladimir Palant
2015/02/24 20:19:40
Nit: how about:
property_version = value.get("v
kzar
2015/02/26 19:50:17
Done.
| |
| 35 if argument_string: | 31 if argument_string: |
| 36 for argument in argument_string.split(","): | 32 for argument in argument_string.split(","): |
| 37 if argument.strip(): | 33 if argument.strip(): |
| 38 match = re.match(r"^\s*(%s)\s+(\S+)\s*$" % TYPE_REGEXP, argument) | 34 match = re.match(r"^\s*(%s)\s+(\S+)\s*$" % TYPE_REGEXP, argument) |
| 39 if not match: | 35 if not match: |
| 40 warnings.warn("Skipped malformed argument: '%s'" % argument) | 36 warnings.warn("Skipped malformed argument: '%s'" % argument) |
| 41 continue | 37 continue |
| 42 argument_type, argument_name = match.groups() | 38 argument_type, argument_name = match.groups() |
| 43 arguments.append({ | 39 arguments.append({ |
| 44 "name": argument_name, | 40 "name": argument_name, |
| 45 "type": argument_type | 41 "type": argument_type |
| 46 }) | 42 }) |
| 47 parsed.append({ | 43 value.update({ |
| 48 "type": "method", | 44 "type": "method", |
| 49 "name": property_name, | 45 "name": property_name, |
| 50 "version": property_version, | |
| 51 "return_type": return_type, | 46 "return_type": return_type, |
| 52 "arguments": arguments | 47 "arguments": arguments |
| 53 }) | 48 }) |
| 49 parsed.append(value) | |
| 54 else: | 50 else: |
| 55 # Item is a property | 51 # Item is a property |
| 56 match = re.match(r"^\s*(readonly\s+)?(%s)\s+(\S+)\s*$" % TYPE_REGEXP, key) | 52 match = re.match(r"^\s*(readonly\s+)?(%s)\s+(\S+)\s*$" % TYPE_REGEXP, key) |
| 57 if not match: | 53 if not match: |
| 58 warnings.warn("Skipped malformed property: '%s'" % key) | 54 warnings.warn("Skipped malformed property: '%s'" % key) |
| 59 continue | 55 continue |
| 60 property_modifier, property_type, property_name = match.groups() | 56 property_modifier, property_type, property_name = match.groups() |
| 61 parsed.append({ | 57 value.update({ |
| 62 "type": property_type, | 58 "type": property_type, |
| 63 "name": property_name, | 59 "name": property_name, |
| 64 "modifier": property_modifier or "" | 60 "modifier": property_modifier or "" |
| 65 }) | 61 }) |
| 62 parsed.append(value) | |
| 66 parsed.sort(key=lambda x: x["name"]) | 63 parsed.sort(key=lambda x: x["name"]) |
| 67 return parsed | 64 return parsed |
| LEFT | RIGHT |