diff test/classinfo3.d @ 110:e8da7856a260 trunk

[svn r114] Implemented the ClassInfo.offTi member.
author lindquist
date Thu, 22 Nov 2007 21:01:01 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/classinfo3.d	Thu Nov 22 21:01:01 2007 +0100
@@ -0,0 +1,27 @@
+module classinfo3;
+
+class C
+{
+    int i;
+    float f;
+    long l;
+    int j;
+}
+
+void main()
+{
+    auto c = C.classinfo;
+    assert(c.offTi !is null);
+    assert(c.offTi.length == 4);
+
+    size_t base = 2*size_t.sizeof;
+
+    assert(c.offTi[0].offset == base);
+    assert(c.offTi[0].ti == typeid(int));
+    assert(c.offTi[1].offset == base+4);
+    assert(c.offTi[1].ti == typeid(float));
+    assert(c.offTi[2].offset == base+8);
+    assert(c.offTi[2].ti == typeid(long));
+    assert(c.offTi[3].offset == base+16);
+    assert(c.offTi[3].ti == typeid(int));
+}