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

Unified Diff: client/dom/scripts/systembase.py

Issue 9845043: Rename client/{dom,html} to lib/{dom,html} . (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 9 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
« no previous file with comments | « client/dom/scripts/pegparser_test.py ('k') | client/dom/scripts/systemfrog.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: client/dom/scripts/systembase.py
===================================================================
--- client/dom/scripts/systembase.py (revision 5796)
+++ client/dom/scripts/systembase.py (working copy)
@@ -1,111 +0,0 @@
-#!/usr/bin/python
-# Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
-# for details. All rights reserved. Use of this source code is governed by a
-# BSD-style license that can be found in the LICENSE file.
-
-"""This module provides base functionality for systems to generate
-Dart APIs from the IDL database."""
-
-import os
-#import re
-import generator
-
-def MassagePath(path):
- # The most robust way to emit path separators is to use / always.
- return path.replace('\\', '/')
-
-class System(object):
- """A System generates all the files for one implementation.
-
- This is a base class for all the specific systems.
- The life-cycle of a System is:
- - construction (__init__)
- - (InterfaceGenerator | ProcessCallback)* # for each IDL interface
- - GenerateLibraries
- - Finish
- """
-
- def __init__(self, templates, database, emitters, output_dir):
- self._templates = templates
- self._database = database
- self._emitters = emitters
- self._output_dir = output_dir
- self._dart_callback_file_paths = []
-
- def InterfaceGenerator(self,
- interface,
- common_prefix,
- super_interface_name,
- source_filter):
- """Returns an interface generator for |interface|.
-
- Called once for each interface that is not a callback function.
- """
- return None
-
- def ProcessCallback(self, interface, info):
- """Processes an interface that is a callback function."""
- pass
-
- def GenerateLibraries(self, lib_dir):
- pass
-
- def Finish(self):
- pass
-
-
- # Helper methods used by several systems.
-
- def _ProcessCallback(self, interface, info, file_path):
- """Generates a typedef for the callback interface."""
- self._dart_callback_file_paths.append(file_path)
- code = self._emitters.FileEmitter(file_path)
-
- code.Emit(self._templates.Load('callback.darttemplate'))
- code.Emit('typedef $TYPE $NAME($PARAMS);\n',
- NAME=interface.id,
- TYPE=info.type_name,
- PARAMS=info.ParametersImplementationDeclaration())
-
-
- def _GenerateLibFile(self, lib_template, lib_file_path, file_paths,
- **template_args):
- """Generates a lib file from a template and a list of files.
-
- Additional keyword arguments are passed to the template.
- Typically called from self.GenerateLibraries.
- """
- # Load template.
- template = self._templates.Load(lib_template)
- # Generate the .lib file.
- lib_file_contents = self._emitters.FileEmitter(lib_file_path)
-
- # Emit the list of #source directives.
- list_emitter = lib_file_contents.Emit(template, **template_args)
- lib_file_dir = os.path.dirname(lib_file_path)
- for path in sorted(file_paths):
- relpath = os.path.relpath(path, lib_file_dir)
- list_emitter.Emit("#source('$PATH');\n", PATH=MassagePath(relpath))
-
-
- def _BaseDefines(self, interface):
- """Returns a set of names (strings) for members defined in a base class.
- """
- def WalkParentChain(interface):
- if interface.parents:
- # Only consider primary parent, secondary parents are not on the
- # implementation class inheritance chain.
- parent = interface.parents[0]
- if generator.IsDartCollectionType(parent.type.id):
- return
- if self._database.HasInterface(parent.type.id):
- parent_interface = self._database.GetInterface(parent.type.id)
- for attr in parent_interface.attributes:
- result.add(attr.id)
- for op in parent_interface.operations:
- result.add(op.id)
- WalkParentChain(parent_interface)
-
- result = set()
- WalkParentChain(interface)
- return result;
« no previous file with comments | « client/dom/scripts/pegparser_test.py ('k') | client/dom/scripts/systemfrog.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698