/runtime/typeinfo/ti_delegate.d
http://github.com/wilkie/djehuty · D · 40 lines · 23 code · 11 blank · 6 comment · 1 complexity · 51655c1db69a6609a3de1e31a515a0d2 MD5 · raw file
- /*
- * ti_delegate.d
- *
- * This module implements the TypeInfo for the delegate type.
- *
- */
- module runtime.typeinfo.ti_delegate;
- class TypeInfo_Delegate : TypeInfo {
- hash_t getHash(void *p) {
- long l = *cast(long *)p;
- return cast(uint)(l + (l >> 32));
- }
- int equals(void *p1, void *p2) {
- return *cast(dg *)p1 == *cast(dg *)p2;
- }
- size_t tsize() {
- return dg.sizeof;
- }
- void swap(void *p1, void *p2) {
- dg t;
- t = *cast(dg *)p1;
- *cast(dg *)p1 = *cast(dg *)p2;
- *cast(dg *)p2 = t;
- }
- uint flags() {
- return 1;
- }
- private alias void delegate(int) dg;
- }