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

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

Issue 10702202: Introduce TypeRegistry class. (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
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 systems to generate 6 """This module provides shared functionality for the systems to generate
7 frog binding from the IDL database.""" 7 frog binding from the IDL database."""
8 8
9 import os 9 import os
10 from generator import * 10 from generator import *
11 from systembase import * 11 from systembase import *
12 12
13 # Members (getters, setters, and methods) to suppress. These are 13 # Members (getters, setters, and methods) to suppress. These are
14 # either removed or custom implemented. 14 # either removed or custom implemented.
15 _dom_frog_omitted_members = set([ 15 _dom_frog_omitted_members = set([
16 # Replace with custom. 16 # Replace with custom.
17 'DOMWindow.get:top', 17 'DOMWindow.get:top',
18 'HTMLIFrameElement.get:contentWindow', 18 'HTMLIFrameElement.get:contentWindow',
19 19
20 # Remove. 20 # Remove.
21 'DOMWindow.get:frameElement', 21 'DOMWindow.get:frameElement',
22 'HTMLIFrameElement.get:contentDocument', 22 'HTMLIFrameElement.get:contentDocument',
23 ]) 23 ])
24 24
25 class FrogSystem(System): 25 class FrogSystem(System):
26 26
27 def __init__(self, templates, database, emitters, output_dir): 27 def __init__(self, options):
28 super(FrogSystem, self).__init__( 28 super(FrogSystem, self).__init__(options)
29 templates, database, emitters, output_dir)
30 self._impl_file_paths = [] 29 self._impl_file_paths = []
31 30
32 def ProcessInterface(self, interface): 31 def ProcessInterface(self, interface):
33 """.""" 32 """."""
34 if IsPureInterface(interface.id): 33 if IsPureInterface(interface.id):
35 return 34 return
36 template_file = 'impl_%s.darttemplate' % interface.id 35 template_file = 'impl_%s.darttemplate' % interface.id
37 template = self._templates.TryLoad(template_file) 36 template = self._templates.TryLoad(template_file)
38 if not template: 37 if not template:
39 template = self._templates.Load('frog_impl.darttemplate') 38 template = self._templates.Load('frog_impl.darttemplate')
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after
388 if native_body: 387 if native_body:
389 native_string = " '''" + native_body + "'''" 388 native_string = " '''" + native_body + "'''"
390 389
391 self._members_emitter.Emit( 390 self._members_emitter.Emit(
392 '\n' 391 '\n'
393 ' $TYPE $NAME($PARAMS) native$NATIVESTRING;\n', 392 ' $TYPE $NAME($PARAMS) native$NATIVESTRING;\n',
394 TYPE=self._NarrowOutputType(info.type_name), 393 TYPE=self._NarrowOutputType(info.type_name),
395 NAME=info.name, 394 NAME=info.name,
396 PARAMS=params, 395 PARAMS=params,
397 NATIVESTRING=native_string) 396 NATIVESTRING=native_string)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698