diff options
author | raymes@chromium.org <raymes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-17 17:51:06 +0000 |
---|---|---|
committer | raymes@chromium.org <raymes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-17 17:51:06 +0000 |
commit | 42a3748c73c9c6f191ec41cd6d093ccdc2fdf7aa (patch) | |
tree | f6300fc105ed5c0ed7d37875127b8f61437d8c59 /ppapi/ppapi_ipc.gypi | |
parent | 485f9a6b002b600f86935aefc6cc4ca7e6f68763 (diff) | |
download | chromium_src-42a3748c73c9c6f191ec41cd6d093ccdc2fdf7aa.zip chromium_src-42a3748c73c9c6f191ec41cd6d093ccdc2fdf7aa.tar.gz chromium_src-42a3748c73c9c6f191ec41cd6d093ccdc2fdf7aa.tar.bz2 |
Introduce RawVarData and associated classes for serializing PP_Vars
This provides a replacement for the inner class of SerializedVar for serializing a PP_Var. It achieves 2 purposes: 1) it refactors the design of SerializedVar::Inner which was growing increasingly messy (and was going to become nastier) 2) it provides support for serializing/deserializing dictionary and array PP_Vars. To serialize a PP_Var, first the transitive closure of that var is computed (all nodes referenced) and then each var in the transitive closure is written to the message. Some trickiness arises from the fact that a PP_Var can be either a primitive or a reference and references have to be maintained when transmitting over the wire. The comments in the header files provide a description of the approach in more detail.
BUG=
Review URL: https://codereview.chromium.org/13887007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194629 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/ppapi_ipc.gypi')
-rw-r--r-- | ppapi/ppapi_ipc.gypi | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ppapi/ppapi_ipc.gypi b/ppapi/ppapi_ipc.gypi index 616d8e5..f833472 100644 --- a/ppapi/ppapi_ipc.gypi +++ b/ppapi/ppapi_ipc.gypi @@ -18,6 +18,8 @@ 'proxy/ppapi_messages.h', 'proxy/ppapi_param_traits.cc', 'proxy/ppapi_param_traits.h', + 'proxy/raw_var_data.cc', + 'proxy/raw_var_data.h', 'proxy/resource_message_params.cc', 'proxy/resource_message_params.h', 'proxy/serialized_flash_menu.cc', |