OLD | NEW |
1 # Copyright (C) 2013 Google Inc. All rights reserved. | 1 # Copyright (C) 2013 Google Inc. All rights reserved. |
2 # | 2 # |
3 # Redistribution and use in source and binary forms, with or without | 3 # Redistribution and use in source and binary forms, with or without |
4 # modification, are permitted provided that the following conditions are | 4 # modification, are permitted provided that the following conditions are |
5 # met: | 5 # met: |
6 # | 6 # |
7 # * Redistributions of source code must retain the above copyright | 7 # * Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # * Redistributions in binary form must reproduce the above | 9 # * Redistributions in binary form must reproduce the above |
10 # copyright notice, this list of conditions and the following disclaimer | 10 # copyright notice, this list of conditions and the following disclaimer |
(...skipping 10 matching lines...) Expand all Loading... |
21 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 21 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
22 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 22 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
23 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 23 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
24 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 24 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
25 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 25 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
28 | 28 |
29 # FIXME: eliminate this file if possible | 29 # FIXME: eliminate this file if possible |
30 | 30 |
| 31 import re |
31 import v8_types | 32 import v8_types |
32 | 33 |
33 ACRONYMS = ['CSS', 'HTML', 'IME', 'JS', 'SVG', 'URL', 'WOFF', 'XML', 'XSLT'] | 34 ACRONYMS = ['CSS', 'HTML', 'IME', 'JS', 'SVG', 'URL', 'WOFF', 'XML', 'XSLT'] |
34 | 35 |
35 | 36 |
36 # FIXME: these could be merged as implemented_as_cpp_name | 37 # FIXME: these could be merged as implemented_as_cpp_name |
37 def cpp_class_name(interface): | 38 def cpp_class_name(interface): |
38 return interface.extended_attributes.get('ImplementedAs', interface.name) | 39 return interface.extended_attributes.get('ImplementedAs', interface.name) |
39 | 40 |
40 | 41 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 """ | 75 """ |
75 for acronym in ACRONYMS: | 76 for acronym in ACRONYMS: |
76 if name.startswith(acronym): | 77 if name.startswith(acronym): |
77 name.replace(acronym, acronym.lower()) | 78 name.replace(acronym, acronym.lower()) |
78 return name | 79 return name |
79 return name[0].lower() + name[1:] | 80 return name[0].lower() + name[1:] |
80 | 81 |
81 | 82 |
82 def v8_class_name(interface): | 83 def v8_class_name(interface): |
83 return v8_types.v8_type(interface.name) | 84 return v8_types.v8_type(interface.name) |
| 85 |
| 86 |
| 87 def has_extended_attribute_value(extended_attributes, key, value): |
| 88 return key in extended_attributes and value in extended_attribute_values(ext
ended_attributes, key) |
| 89 |
| 90 |
| 91 def extended_attribute_values(extended_attributes, key): |
| 92 if key not in extended_attributes: |
| 93 return None |
| 94 values_string = extended_attributes[key] |
| 95 if not values_string: |
| 96 return [] |
| 97 return re.split('[|&]', values_string) |
OLD | NEW |