diff options
author | teravest@chromium.org <teravest@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-12-08 00:10:50 +0000 |
---|---|---|
committer | teravest@chromium.org <teravest@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-12-08 00:10:50 +0000 |
commit | 8f2a08d56d432bd6e49a9ded8bbee8d870ad0584 (patch) | |
tree | eedba1dd59a769bc06b3a997dfca0c797c52221c /ppapi/generators | |
parent | 0ee3a6819227cc589164493de7c5cd180c16fb9c (diff) | |
download | chromium_src-8f2a08d56d432bd6e49a9ded8bbee8d870ad0584.zip chromium_src-8f2a08d56d432bd6e49a9ded8bbee8d870ad0584.tar.gz chromium_src-8f2a08d56d432bd6e49a9ded8bbee8d870ad0584.tar.bz2 |
Auto generate thunk .cc file for PPB_FileSystem.
This change also fixes generated thunk .cc files to explicitly include
"ppapi/c/pp_completion_callback.h" when using a PP_CompletionCallback.
BUG=
Review URL: https://chromiumcodereview.appspot.com/11467018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171892 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/generators')
-rwxr-xr-x | ppapi/generators/idl_thunk.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/ppapi/generators/idl_thunk.py b/ppapi/generators/idl_thunk.py index c66137f..250054e 100755 --- a/ppapi/generators/idl_thunk.py +++ b/ppapi/generators/idl_thunk.py @@ -35,6 +35,7 @@ class ThunkBodyMetadata(object): """Metadata about thunk body. Used for selecting which headers to emit.""" def __init__(self): self._apis = set() + self._includes = set() def AddApi(self, api): self._apis.add(api) @@ -42,6 +43,12 @@ class ThunkBodyMetadata(object): def Apis(self): return self._apis + def AddInclude(self, include): + self._includes.add(include) + + def Includes(self): + return self._includes + def _GetBaseFileName(filenode): """Returns the base name for output files, given the filenode. @@ -192,6 +199,7 @@ def _MakeNormalMemberBody(filenode, node, member, rtype, args, meta): if is_callback_func: call_args = args[:-1] + [('', 'enter.callback()', '', '')] + meta.AddInclude('ppapi/c/pp_completion_callback.h') else: call_args = args @@ -318,6 +326,8 @@ class TGen(GeneratorByFile): includes.append(_GetHeaderFileName(filenode)) for api in meta.Apis(): includes.append('ppapi/thunk/%s.h' % api.lower()) + for i in meta.Includes(): + includes.append(i) for include in sorted(includes): out.Write('#include "%s"\n' % include) out.Write('\n') |