comparison lphobos/std/typeinfo/ti_ptr.d @ 1:c53b6e3fe49a trunk

[svn r5] Initial commit. Most things are very rough.
author lindquist
date Sat, 01 Sep 2007 21:43:27 +0200
parents
children
comparison
equal deleted inserted replaced
0:a9e71648e74d 1:c53b6e3fe49a
1
2 // pointer
3
4 module std.typeinfo.ti_ptr;
5
6 class TypeInfo_P : TypeInfo
7 {
8 hash_t getHash(void *p)
9 {
10 return cast(uint)*cast(void* *)p;
11 }
12
13 int equals(void *p1, void *p2)
14 {
15 return *cast(void* *)p1 == *cast(void* *)p2;
16 }
17
18 int compare(void *p1, void *p2)
19 {
20 return *cast(void* *)p1 - *cast(void* *)p2;
21 }
22
23 size_t tsize()
24 {
25 return (void*).sizeof;
26 }
27
28 void swap(void *p1, void *p2)
29 {
30 void* t;
31
32 t = *cast(void* *)p1;
33 *cast(void* *)p1 = *cast(void* *)p2;
34 *cast(void* *)p2 = t;
35 }
36
37 uint flags()
38 {
39 return 1;
40 }
41 }
42