Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct Structs_S
- {
- int x;
- int y;
- QDataStream opBinaryRight(string op : ">>")(QDataStream ds)
- {
- ds >> x;
- ds >> y;
- return ds;
- }
- QDataStream opBinaryRight(string op : "<<")(QDataStream ds)
- {
- ds << y;
- ds << x;
- return ds;
- }
- }
- static this()
- {
- qRegisterMetaType!Structs_S;
- qRegisterMetaTypeStreamOperators!Structs_S;
- }
- {
- auto v = QVariant.fromValue(Structs_S(42, 43));
- auto ba = QByteArray();
- auto ds = scoped!QDataStream(&ba, QIODevice.ReadWrite);
- ds << v;
- v.clear();
- auto ds2 = scoped!QDataStream(&ba, QIODevice.ReadOnly);
- ds2 >> v;
- auto s = v.value!Structs_S();
- assert (s.x == 42 && s.y == 43);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement