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

Side by Side Diff: Source/bindings/scripts/compute_interfaces_info_individual.py

Issue 678453004: IDL: Use implicit false in compute_info_individual() (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebase Created 6 years, 2 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
« no previous file with comments | « no previous file | no next file » | 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 # 2 #
3 # Copyright (C) 2013 Google Inc. All rights reserved. 3 # Copyright (C) 2013 Google Inc. All rights reserved.
4 # 4 #
5 # Redistribution and use in source and binary forms, with or without 5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions are 6 # modification, are permitted provided that the following conditions are
7 # met: 7 # met:
8 # 8 #
9 # * Redistributions of source code must retain the above copyright 9 # * Redistributions of source code must retain the above copyright
10 # notice, this list of conditions and the following disclaimer. 10 # notice, this list of conditions and the following disclaimer.
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 this_include_path=None): 142 this_include_path=None):
143 paths_dict = self.partial_interface_files[partial_interface_name] 143 paths_dict = self.partial_interface_files[partial_interface_name]
144 paths_dict['full_paths'].append(full_path) 144 paths_dict['full_paths'].append(full_path)
145 if this_include_path: 145 if this_include_path:
146 paths_dict['include_paths'].append(this_include_path) 146 paths_dict['include_paths'].append(this_include_path)
147 147
148 def collect_info(self, idl_filename): 148 def collect_info(self, idl_filename):
149 """Reads an idl file and collects information which is required by the 149 """Reads an idl file and collects information which is required by the
150 binding code generation.""" 150 binding code generation."""
151 definitions = self.reader.read_idl_file(idl_filename) 151 definitions = self.reader.read_idl_file(idl_filename)
152 if len(definitions.interfaces) > 0: 152 if definitions.interfaces:
153 definition = next(definitions.interfaces.itervalues()) 153 definition = next(definitions.interfaces.itervalues())
154 interface_info = { 154 interface_info = {
155 'is_callback_interface': definition.is_callback, 155 'is_callback_interface': definition.is_callback,
156 'is_dictionary': False, 156 'is_dictionary': False,
157 # Interfaces that are referenced (used as types) and that we 157 # Interfaces that are referenced (used as types) and that we
158 # introspect during code generation (beyond interface-level 158 # introspect during code generation (beyond interface-level
159 # data ([ImplementedAs], is_callback_interface, ancestors, and 159 # data ([ImplementedAs], is_callback_interface, ancestors, and
160 # inherited extended attributes): deep dependencies. 160 # inherited extended attributes): deep dependencies.
161 # These cause rebuilds of referrers, due to the dependency, 161 # These cause rebuilds of referrers, due to the dependency,
162 # so these should be minimized; currently only targets of 162 # so these should be minimized; currently only targets of
163 # [PutForwards]. 163 # [PutForwards].
164 'referenced_interfaces': get_put_forward_interfaces_from_definit ion(definition), 164 'referenced_interfaces': get_put_forward_interfaces_from_definit ion(definition),
165 } 165 }
166 elif len(definitions.dictionaries) > 0: 166 elif definitions.dictionaries:
167 definition = next(definitions.dictionaries.itervalues()) 167 definition = next(definitions.dictionaries.itervalues())
168 interface_info = { 168 interface_info = {
169 'is_callback_interface': False, 169 'is_callback_interface': False,
170 'is_dictionary': True, 170 'is_dictionary': True,
171 'referenced_interfaces': None, 171 'referenced_interfaces': None,
172 } 172 }
173 else: 173 else:
174 raise Exception('IDL file must contain one interface or dictionary') 174 raise Exception('IDL file must contain one interface or dictionary')
175 175
176 extended_attributes = definition.extended_attributes 176 extended_attributes = definition.extended_attributes
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
234 for idl_filename in idl_files: 234 for idl_filename in idl_files:
235 info_collector.collect_info(idl_filename) 235 info_collector.collect_info(idl_filename)
236 236
237 write_pickle_file(options.interfaces_info_file, 237 write_pickle_file(options.interfaces_info_file,
238 info_collector.get_info_as_dict(), 238 info_collector.get_info_as_dict(),
239 options.write_file_only_if_changed) 239 options.write_file_only_if_changed)
240 240
241 241
242 if __name__ == '__main__': 242 if __name__ == '__main__':
243 sys.exit(main()) 243 sys.exit(main())
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698