Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(148)

Side by Side Diff: lib/dom/scripts/systemhtml.py

Issue 10704100: Do not split attributes on getters and setters in databasebuilder. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: . Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « lib/dom/scripts/systemfrog.py ('k') | lib/dom/scripts/systeminterface.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 2 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
3 # for details. All rights reserved. Use of this source code is governed by a 3 # for details. All rights reserved. Use of this source code is governed by a
4 # BSD-style license that can be found in the LICENSE file. 4 # BSD-style license that can be found in the LICENSE file.
5 5
6 """This module provides shared functionality for the system to generate 6 """This module provides shared functionality for the system to generate
7 Dart:html APIs from the IDL database.""" 7 Dart:html APIs from the IDL database."""
8 8
9 import emitter 9 import emitter
10 10
(...skipping 924 matching lines...) Expand 10 before | Expand all | Expand 10 after
935 for merged_interface in _merged_html_interfaces: 935 for merged_interface in _merged_html_interfaces:
936 if _merged_html_interfaces[merged_interface] == self._interface.id: 936 if _merged_html_interfaces[merged_interface] == self._interface.id:
937 merged_interface = self._database.GetInterface(merged_interface) 937 merged_interface = self._database.GetInterface(merged_interface)
938 self.AddMembers(merged_interface) 938 self.AddMembers(merged_interface)
939 self._backend.AddMergedMembers(merged_interface) 939 self._backend.AddMergedMembers(merged_interface)
940 940
941 self._backend.AddMembers(self._interface) 941 self._backend.AddMembers(self._interface)
942 self._backend.AddSecondaryMembers(self._interface) 942 self._backend.AddSecondaryMembers(self._interface)
943 self._backend.FinishInterface() 943 self._backend.FinishInterface()
944 944
945 def AddAttribute(self, getter, setter): 945 def AddAttribute(self, attribute):
946 getter = attribute
947 setter = attribute if not IsReadOnly(attribute) else None
946 dom_name = DartDomNameOfAttribute(getter) 948 dom_name = DartDomNameOfAttribute(getter)
947 html_getter_name = self._shared.RenameInHtmlLibrary( 949 html_getter_name = self._shared.RenameInHtmlLibrary(
948 self._interface.id, dom_name, 'get:') 950 self._interface.id, dom_name, 'get:')
949 html_setter_name = self._shared.RenameInHtmlLibrary( 951 html_setter_name = self._shared.RenameInHtmlLibrary(
950 self._interface.id, dom_name, 'set:') 952 self._interface.id, dom_name, 'set:')
951 953
952 if not html_getter_name or self._shared.IsPrivate(html_getter_name): 954 if not html_getter_name or self._shared.IsPrivate(html_getter_name):
953 getter = None 955 getter = None
954 if not html_setter_name or self._shared.IsPrivate(html_setter_name): 956 if not html_setter_name or self._shared.IsPrivate(html_setter_name):
955 setter = None 957 setter = None
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
1218 ' }\n', 1220 ' }\n',
1219 TYPE=self._NarrowInputType(element_type)) 1221 TYPE=self._NarrowInputType(element_type))
1220 1222
1221 # TODO(sra): Use separate mixins for mutable implementations of List<T>. 1223 # TODO(sra): Use separate mixins for mutable implementations of List<T>.
1222 # TODO(sra): Use separate mixins for typed array implementations of List<T>. 1224 # TODO(sra): Use separate mixins for typed array implementations of List<T>.
1223 if self._interface.id != 'NodeList': 1225 if self._interface.id != 'NodeList':
1224 template_file = 'immutable_list_mixin.darttemplate' 1226 template_file = 'immutable_list_mixin.darttemplate'
1225 template = self._system._templates.Load(template_file) 1227 template = self._system._templates.Load(template_file)
1226 self._members_emitter.Emit(template, E=self._shared.DartType(element_type) ) 1228 self._members_emitter.Emit(template, E=self._shared.DartType(element_type) )
1227 1229
1228 def AddAttribute(self, getter, setter): 1230 def AddAttribute(self, attribute):
1231 getter = attribute
1232 setter = attribute if not IsReadOnly(attribute) else None
1229 dom_name = DartDomNameOfAttribute(getter or setter) 1233 dom_name = DartDomNameOfAttribute(getter or setter)
1230 html_getter_name = None 1234 html_getter_name = None
1231 if not self._shared.IsCustomInHtmlLibrary( 1235 if not self._shared.IsCustomInHtmlLibrary(
1232 self._interface, dom_name, 'get:'): 1236 self._interface, dom_name, 'get:'):
1233 html_getter_name = self._shared.RenameInHtmlLibrary( 1237 html_getter_name = self._shared.RenameInHtmlLibrary(
1234 self._interface.id, dom_name, 'get:', 1238 self._interface.id, dom_name, 'get:',
1235 implementation_class=True) 1239 implementation_class=True)
1236 html_setter_name = None 1240 html_setter_name = None
1237 if not self._shared.IsCustomInHtmlLibrary( 1241 if not self._shared.IsCustomInHtmlLibrary(
1238 self._interface, dom_name, 'set:'): 1242 self._interface, dom_name, 'set:'):
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
1397 Collect(database.GetInterface(parent.type.id), 1401 Collect(database.GetInterface(parent.type.id),
1398 seen, collected) 1402 seen, collected)
1399 1403
1400 inheritance_closure = {} 1404 inheritance_closure = {}
1401 for interface in database.GetInterfaces(): 1405 for interface in database.GetInterfaces():
1402 seen = set() 1406 seen = set()
1403 collected = [] 1407 collected = []
1404 Collect(interface, seen, collected) 1408 Collect(interface, seen, collected)
1405 inheritance_closure[interface.id] = collected 1409 inheritance_closure[interface.id] = collected
1406 return inheritance_closure 1410 return inheritance_closure
OLDNEW
« no previous file with comments | « lib/dom/scripts/systemfrog.py ('k') | lib/dom/scripts/systeminterface.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698