comparison mini/test1/main.d @ 362:bcbfffef4f9e

Undecorated D types can be registered with Qt
author Max Samukha <maxter@maxter.com>
date Wed, 09 Jun 2010 16:37:24 +0300
parents beaf4a2974d7
children 185df9220ea7
comparison
equal deleted inserted replaced
361:beaf4a2974d7 362:bcbfffef4f9e
25 } 25 }
26 } 26 }
27 27
28 void main(string[] args) 28 void main(string[] args)
29 { 29 {
30 int id = qRegisterMetaType!A();
31 qRegisterMetaTypeStreamOperators!A();
32
33 foreach (i; 0..10)
34 {
35 writeln("Iter ", i);
36
37 void foo(int x, int y, int z)
38 {
39 auto a = new A("A" ~ to!string(i));
40 auto b = cast(A)QMetaType.construct(id, cast(void*)a);
41 writeln(b.name);
42
43 QMetaType.destroy(id, cast(void*)a);
44 QMetaType.destroy(id, cast(void*)b);
45
46 scope ds = new QDataStream(cast(void*)3, QtdObjectFlags.nativeOwnership);
47 QMetaType.save(ds, id, cast(void*)i);
48 QMetaType.load(ds, id, cast(void*)i);
49 writeln("Done iterating ", x, " ", y, " ", z);
50 }
51
52 foo(i + 1, i + 2, i + 3);
53 }
54 /+
55
56 writeln("Great!");
57
58
59 writeln("Even greater!");
60 +/
61
62 } 30 }