Skip to content
  • Ken Rockot's avatar
    Mojo Bindings: Support handles in native structs · fd907634
    Ken Rockot authored
    Changes [Native] struct serialization to use an IPC::Message instead of
    a base::Pickle, allowing ParamTraits for [Native]-mapped types to be
    parameterized over IPC::Message once again. In order to support this,
    IPC::Message and related attachment support code has been moved into a
    separate leaf target in //ipc, avoiding circular dependencies with Mojo
    bindings.
    
    Also changes the wire representation of native structs to allow for
    typed Mojo handle attachments, and wires up native struct
    serialization to automatically convert between IPC::MessageAttachments
    and these typed mojom handles.
    
    The net result here is that [Native] mojom structs can be mapped to
    native types whose ParamTraits use message attachments.
    
    BUG=762025
    
    Change-Id: Ib058eff2f32e0e7abfff9619da9f142113ad28ed
    Reviewed-on: https://chromium-review.googlesource.com/650219
    
    
    Commit-Queue: Ken Rockot <rockot@chromium.org>
    Reviewed-by: default avatarJohn Abd-El-Malek <jam@chromium.org>
    Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
    Reviewed-by: default avatarYuzhu Shen <yzshen@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#501866}
    fd907634