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

Unified Diff: Source/bindings/scripts/unstable/idl_compiler.py

Issue 169743005: Faster run-bindings-tests (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Removed timings and fast is the only mode. Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: Source/bindings/scripts/unstable/idl_compiler.py
diff --git a/Source/bindings/scripts/unstable/idl_compiler.py b/Source/bindings/scripts/unstable/idl_compiler.py
index 3fbf80c75f6efb14323da268b2a506aea3bc7185..8e06aff52ae06fddf75d267d5522af20df17bd4f 100755
--- a/Source/bindings/scripts/unstable/idl_compiler.py
+++ b/Source/bindings/scripts/unstable/idl_compiler.py
@@ -38,7 +38,6 @@ For details, see bug http://crbug.com/239771
import optparse
import os
-import cPickle as pickle
import sys
import code_generator_v8
@@ -48,7 +47,6 @@ def parse_options():
parser = optparse.OptionParser()
parser.add_option('--idl-attributes-file')
parser.add_option('--output-directory')
- parser.add_option('--interfaces-info-file')
parser.add_option('--write-file-only-if-changed', type='int')
# ensure output comes last, so command line easy to parse via regexes
parser.disable_interspersed_args()
@@ -62,23 +60,26 @@ def parse_options():
return options, idl_filename
-def main():
- options, idl_filename = parse_options()
+def compile_idl(idl_filename, output_directory, idl_attributes_file,
+ curr_interfaces_info={}, reader=None,
+ write_header_and_cpp=code_generator_v8.write_header_and_cpp):
Nils Barth (inactive) 2014/02/25 07:29:59 I ultimately decided that a code generator object
terry 2014/02/27 23:40:26 This works for me right now. Maybe an abstract ca
basename = os.path.basename(idl_filename)
interface_name, _ = os.path.splitext(basename)
- output_directory = options.output_directory
+ output_directory = output_directory
- interfaces_info_filename = options.interfaces_info_file
- if interfaces_info_filename:
- with open(interfaces_info_filename) as interfaces_info_file:
- interfaces_info = pickle.load(interfaces_info_file)
- else:
- interfaces_info = None
+ interfaces_info = curr_interfaces_info
- reader = idl_reader.IdlReader(interfaces_info, options.idl_attributes_file, output_directory)
+ if reader == None:
+ reader = idl_reader.IdlReader(interfaces_info, idl_attributes_file, output_directory)
definitions = reader.read_idl_definitions(idl_filename)
- code_generator_v8.write_header_and_cpp(definitions, interface_name, interfaces_info, output_directory)
+ write_header_and_cpp(definitions, interface_name, interfaces_info, output_directory)
+
+ return reader
+def main():
+ options, idl_filename = parse_options()
+ compile_idl(idl_filename, options.output_directory, options.idl_attributes_file)
+
if __name__ == '__main__':
sys.exit(main())

Powered by Google App Engine
This is Rietveld 408576698