ipc/ipdl/test/cxx/PTestDataStructuresCommon.ipdlh

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 include protocol PTestDataStructuresSub;
     3 using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
     4 using nsIntRegion from "nsRegion.h";
     6 namespace mozilla {
     7 namespace _foo {
     9 union IntDouble {
    10     int;
    11     double;
    12 };
    14 struct SIntDouble {
    15     int i;
    16     double d;
    17 };
    19 union IntDoubleArrays {
    20     int;
    21     int[];
    22     double[];
    23 };
    25 struct SIntDoubleArrays {
    26     int i;
    27     int[] ai;
    28     double[] ad;
    29 };
    31 struct ActorWrapper {
    32     PTestDataStructuresSub actor;
    33 };
    35 union Actors {
    36     int;
    37     int[];
    38     PTestDataStructuresSub[];
    39 };
    41 struct SActors {
    42     int i;
    43     int[] ai;
    44     PTestDataStructuresSub[] ap;
    45 };
    47 union Unions {
    48     int;
    49     int[];
    50     PTestDataStructuresSub[];
    51     Actors[];
    52 };
    54 struct Structs {
    55     int i;
    56     int[] ai;
    57     PTestDataStructuresSub[] ap;
    58     SActors[] aa;
    59 };
    61 union WithStructs {
    62     int;
    63     int[];
    64     PTestDataStructuresSub[];
    65     SActors[];
    66     Structs[];
    67 };
    69 struct WithUnions {
    70     int i;
    71     int[] ai;
    72     PTestDataStructuresSub[] ap;
    73     Actors[] aa;
    74     Unions[] au;
    75 };
    77 struct CommonAttrs { bool dummy; };
    78 struct FooAttrs { int dummy; };
    79 struct BarAttrs { float dummy; };
    80 union SpecificAttrs {
    81     FooAttrs;
    82     BarAttrs;
    83 };
    84 struct Attrs {
    85     CommonAttrs common;
    86     SpecificAttrs specific;
    87 };
    88 struct SetAttrs {
    89     PTestDataStructuresSub x;
    90     Attrs attrs;
    91 };
    92 union Op { null_t; SetAttrs; };
    94 struct ShmemStruct {
    95     int i;
    96     Shmem mem;
    97 };
    99 union ShmemUnion {
   100     int;
   101     Shmem;
   102 };
   104 struct Empty { };
   106 } // namespace _foo
   107 } // namespace mozilla

mercurial