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

Side by Side Diff: core/inspector/CodeGeneratorInspector.py

Issue 22498002: Roll IDL to multivm@1329 (Closed) Base URL: https://dart.googlecode.com/svn/third_party/WebCore
Patch Set: Created 7 years, 4 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 | « core/html/track/TextTrackList.idl ('k') | core/inspector/CodeGeneratorInspectorStrings.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/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2011 Google Inc. All rights reserved. 2 # Copyright (c) 2011 Google Inc. All rights reserved.
3 # Copyright (c) 2012 Intel Corporation. All rights reserved. 3 # Copyright (c) 2012 Intel Corporation. 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 30 matching lines...) Expand all
41 import CodeGeneratorInspectorStrings 41 import CodeGeneratorInspectorStrings
42 42
43 # Manually-filled map of type name replacements. 43 # Manually-filled map of type name replacements.
44 TYPE_NAME_FIX_MAP = { 44 TYPE_NAME_FIX_MAP = {
45 "RGBA": "Rgba", # RGBA is reported to be conflicting with a define name in Windows CE. 45 "RGBA": "Rgba", # RGBA is reported to be conflicting with a define name in Windows CE.
46 "": "Empty", 46 "": "Empty",
47 } 47 }
48 48
49 49
50 TYPES_WITH_RUNTIME_CAST_SET = frozenset(["Runtime.RemoteObject", "Runtime.Proper tyDescriptor", "Runtime.InternalPropertyDescriptor", 50 TYPES_WITH_RUNTIME_CAST_SET = frozenset(["Runtime.RemoteObject", "Runtime.Proper tyDescriptor", "Runtime.InternalPropertyDescriptor",
51 "Debugger.FunctionDetails", "Debugger.C allFrame", 51 "Debugger.FunctionDetails", "Debugger.C allFrame", "Debugger.Location",
52 "Canvas.TraceLog", "Canvas.ResourceInfo ", "Canvas.ResourceState", 52 "Canvas.TraceLog", "Canvas.ResourceStat e",
53 # This should be a temporary hack. Time lineEvent should be created via generated C++ API. 53 # This should be a temporary hack. Time lineEvent should be created via generated C++ API.
54 "Timeline.TimelineEvent"]) 54 "Timeline.TimelineEvent"])
55 55
56 TYPES_WITH_OPEN_FIELD_LIST_SET = frozenset(["Timeline.TimelineEvent", 56 TYPES_WITH_OPEN_FIELD_LIST_SET = frozenset(["Timeline.TimelineEvent",
57 # InspectorStyleSheet not only creat es this property but wants to read it and modify it. 57 # InspectorStyleSheet not only creat es this property but wants to read it and modify it.
58 "CSS.CSSProperty", 58 "CSS.CSSProperty",
59 # InspectorResourceAgent needs to up date mime-type. 59 # InspectorResourceAgent needs to up date mime-type.
60 "Network.Response"]) 60 "Network.Response"])
61 61
62 EXACTLY_INT_SUPPORTED = False 62 EXACTLY_INT_SUPPORTED = False
63 63
64 cmdline_parser = optparse.OptionParser() 64 cmdline_parser = optparse.OptionParser()
65 cmdline_parser.add_option("--output_h_dir") 65 cmdline_parser.add_option("--output_dir")
66 cmdline_parser.add_option("--output_cpp_dir")
67 66
68 try: 67 try:
69 arg_options, arg_values = cmdline_parser.parse_args() 68 arg_options, arg_values = cmdline_parser.parse_args()
70 if (len(arg_values) != 1): 69 if (len(arg_values) != 1):
71 raise Exception("Exactly one plain argument expected (found %s)" % len(a rg_values)) 70 raise Exception("Exactly one plain argument expected (found %s)" % len(a rg_values))
72 input_json_filename = arg_values[0] 71 input_json_filename = arg_values[0]
73 output_header_dirname = arg_options.output_h_dir 72 output_dirname = arg_options.output_dir
74 output_cpp_dirname = arg_options.output_cpp_dir 73 if not output_dirname:
75 if not output_header_dirname: 74 raise Exception("Output directory must be specified")
76 raise Exception("Output .h directory must be specified")
77 if not output_cpp_dirname:
78 raise Exception("Output .cpp directory must be specified")
79 except Exception: 75 except Exception:
80 # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html 76 # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html
81 exc = sys.exc_info()[1] 77 exc = sys.exc_info()[1]
82 sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % exc) 78 sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % exc)
83 sys.stderr.write("Usage: <script> protocol.json --output_h_dir <output_heade r_dir> --output_cpp_dir <output_cpp_dir>\n") 79 sys.stderr.write("Usage: <script> --output_dir <output_dir> protocol.json\n" )
84 exit(1) 80 exit(1)
85 81
86 82
87 # FIXME: move this methods under Capitalizer class below and remove duplications . 83 # FIXME: move this methods under Capitalizer class below and remove duplications .
88 def dash_to_camelcase(word): 84 def dash_to_camelcase(word):
89 return ''.join(x.capitalize() or '-' for x in word.split('-')) 85 return ''.join(x.capitalize() or '-' for x in word.split('-'))
90 86
91 87
92 def fix_camel_case(name): 88 def fix_camel_case(name):
93 refined = re.sub(r'-(\w)', lambda pat: pat.group(1).upper(), name) 89 refined = re.sub(r'-(\w)', lambda pat: pat.group(1).upper(), name)
(...skipping 2190 matching lines...) Expand 10 before | Expand all | Expand 10 after
2284 def output_file(file_name): 2280 def output_file(file_name):
2285 # For now, disable the incremental build optimisation in all cases. 2281 # For now, disable the incremental build optimisation in all cases.
2286 if False: 2282 if False:
2287 return SmartOutput(file_name) 2283 return SmartOutput(file_name)
2288 else: 2284 else:
2289 return open(file_name, "w") 2285 return open(file_name, "w")
2290 2286
2291 2287
2292 Generator.go() 2288 Generator.go()
2293 2289
2294 backend_h_file = output_file(output_header_dirname + "/InspectorBackendDispatche r.h") 2290 backend_h_file = output_file(output_dirname + "/InspectorBackendDispatcher.h")
2295 backend_cpp_file = output_file(output_cpp_dirname + "/InspectorBackendDispatcher .cpp") 2291 backend_cpp_file = output_file(output_dirname + "/InspectorBackendDispatcher.cpp ")
2296 2292
2297 frontend_h_file = output_file(output_header_dirname + "/InspectorFrontend.h") 2293 frontend_h_file = output_file(output_dirname + "/InspectorFrontend.h")
2298 frontend_cpp_file = output_file(output_cpp_dirname + "/InspectorFrontend.cpp") 2294 frontend_cpp_file = output_file(output_dirname + "/InspectorFrontend.cpp")
2299 2295
2300 typebuilder_h_file = output_file(output_header_dirname + "/InspectorTypeBuilder. h") 2296 typebuilder_h_file = output_file(output_dirname + "/InspectorTypeBuilder.h")
2301 typebuilder_cpp_file = output_file(output_cpp_dirname + "/InspectorTypeBuilder.c pp") 2297 typebuilder_cpp_file = output_file(output_dirname + "/InspectorTypeBuilder.cpp")
2302 2298
2303 2299
2304 backend_h_file.write(Templates.backend_h.substitute(None, 2300 backend_h_file.write(Templates.backend_h.substitute(None,
2305 virtualSetters="\n".join(Generator.backend_virtual_setters_list), 2301 virtualSetters="\n".join(Generator.backend_virtual_setters_list),
2306 agentInterfaces="".join(flatten_list(Generator.backend_agent_interface_list) ), 2302 agentInterfaces="".join(flatten_list(Generator.backend_agent_interface_list) ),
2307 methodNamesEnumContent="\n".join(Generator.method_name_enum_list))) 2303 methodNamesEnumContent="\n".join(Generator.method_name_enum_list)))
2308 2304
2309 backend_cpp_file.write(Templates.backend_cpp.substitute(None, 2305 backend_cpp_file.write(Templates.backend_cpp.substitute(None,
2310 constructorInit="\n".join(Generator.backend_constructor_init_list), 2306 constructorInit="\n".join(Generator.backend_constructor_init_list),
2311 setters="\n".join(Generator.backend_setters_list), 2307 setters="\n".join(Generator.backend_setters_list),
(...skipping 23 matching lines...) Expand all
2335 validatorIfdefName=VALIDATOR_IFDEF_NAME)) 2331 validatorIfdefName=VALIDATOR_IFDEF_NAME))
2336 2332
2337 backend_h_file.close() 2333 backend_h_file.close()
2338 backend_cpp_file.close() 2334 backend_cpp_file.close()
2339 2335
2340 frontend_h_file.close() 2336 frontend_h_file.close()
2341 frontend_cpp_file.close() 2337 frontend_cpp_file.close()
2342 2338
2343 typebuilder_h_file.close() 2339 typebuilder_h_file.close()
2344 typebuilder_cpp_file.close() 2340 typebuilder_cpp_file.close()
OLDNEW
« no previous file with comments | « core/html/track/TextTrackList.idl ('k') | core/inspector/CodeGeneratorInspectorStrings.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698