gecko/ipc/ipdl/test/cxx/PTestDataStructuresCommon.ipdlh
Chris Jones 5280bd92be Bug 765734, part 0: Do the right thing here. r=bent
--HG--
extra : rebase_source : 7b73d2ea334b9ca394e156b598e888723844315a
2012-07-12 05:51:57 -07:00

108 lines
1.4 KiB
Plaintext

include protocol PTestDataStructuresSub;
using mozilla::null_t;
using nsIntRegion;
namespace mozilla {
namespace _foo {
union IntDouble {
int;
double;
};
struct SIntDouble {
int i;
double d;
};
union IntDoubleArrays {
int;
int[];
double[];
};
struct SIntDoubleArrays {
int i;
int[] ai;
double[] ad;
};
struct ActorWrapper {
PTestDataStructuresSub actor;
};
union Actors {
int;
int[];
PTestDataStructuresSub[];
};
struct SActors {
int i;
int[] ai;
PTestDataStructuresSub[] ap;
};
union Unions {
int;
int[];
PTestDataStructuresSub[];
Actors[];
};
struct Structs {
int i;
int[] ai;
PTestDataStructuresSub[] ap;
SActors[] aa;
};
union WithStructs {
int;
int[];
PTestDataStructuresSub[];
SActors[];
Structs[];
};
struct WithUnions {
int i;
int[] ai;
PTestDataStructuresSub[] ap;
Actors[] aa;
Unions[] au;
};
struct CommonAttrs { bool dummy; };
struct FooAttrs { int dummy; };
struct BarAttrs { float dummy; };
union SpecificAttrs {
FooAttrs;
BarAttrs;
};
struct Attrs {
CommonAttrs common;
SpecificAttrs specific;
};
struct SetAttrs {
PTestDataStructuresSub x;
Attrs attrs;
};
union Op { null_t; SetAttrs; };
struct ShmemStruct {
int i;
Shmem mem;
};
union ShmemUnion {
int;
Shmem;
};
struct Empty { };
} // namespace _foo
} // namespace mozilla