Showing
4 changed files
with
52 additions
and
48 deletions
@@ -34,8 +34,21 @@ TR_INTERFACE(TR_Hashable) { | @@ -34,8 +34,21 @@ TR_INTERFACE(TR_Hashable) { | ||
34 | fptr_TR_hashableHandleDouble handleDouble; | 34 | fptr_TR_hashableHandleDouble handleDouble; |
35 | }; | 35 | }; |
36 | 36 | ||
37 | -extern unsigned long TR_hashableGetHash(void *); | ||
38 | -extern void TR_hashableHandleDouble(void *, void *); | 37 | +inline |
38 | +unsigned long | ||
39 | +TR_hashableGetHash(void * hashable) | ||
40 | +{ | ||
41 | + unsigned long ret; | ||
42 | + TR_RETCALL(hashable, TR_Hashable, getHash, ret); | ||
43 | + return ret; | ||
44 | +} | ||
45 | + | ||
46 | +inline | ||
47 | +void | ||
48 | +TR_hashableHandleDouble(void * hashable, void * new_hashable) | ||
49 | +{ | ||
50 | + TR_CALL(hashable, TR_Hashable, handleDouble, new_hashable); | ||
51 | +} | ||
39 | 52 | ||
40 | #endif // __TR_INTERFACE_HASHABLE_H__ | 53 | #endif // __TR_INTERFACE_HASHABLE_H__ |
41 | 54 |
@@ -42,10 +42,37 @@ TR_INTERFACE(TR_Iterable) { | @@ -42,10 +42,37 @@ TR_INTERFACE(TR_Iterable) { | ||
42 | TR_iterableRewind((this)); \ | 42 | TR_iterableRewind((this)); \ |
43 | for (; TR_iterableValid((this)); TR_iterableNext((this))) | 43 | for (; TR_iterableValid((this)); TR_iterableNext((this))) |
44 | 44 | ||
45 | -extern void * TR_iterableCurrent(void *); | ||
46 | -extern void TR_iterableNext(void *); | ||
47 | -extern void TR_iterableRewind(void *); | ||
48 | -extern int TR_iterableValid(void *); | 45 | +inline |
46 | +void * | ||
47 | +TR_iterableCurrent(void * iterable) | ||
48 | +{ | ||
49 | + void * ret; | ||
50 | + TR_RETCALL(iterable, TR_Iterable, current, ret); | ||
51 | + return ret; | ||
52 | +} | ||
53 | + | ||
54 | +inline | ||
55 | +void | ||
56 | +TR_iterableNext(void * iterable) | ||
57 | +{ | ||
58 | + TR_CALL(iterable, TR_Iterable, next); | ||
59 | +} | ||
60 | + | ||
61 | +inline | ||
62 | +void | ||
63 | +TR_iterableRewind(void * iterable) | ||
64 | +{ | ||
65 | + TR_CALL(iterable, TR_Iterable, rewind); | ||
66 | +} | ||
67 | + | ||
68 | +inline | ||
69 | +int | ||
70 | +TR_iterableValid(void * iterable) | ||
71 | +{ | ||
72 | + int ret; | ||
73 | + TR_RETCALL(iterable, TR_Iterable, valid, ret); | ||
74 | + return ret; | ||
75 | +} | ||
49 | 76 | ||
50 | #endif // __TR_INTERFACE_ITERABLE_H__ | 77 | #endif // __TR_INTERFACE_ITERABLE_H__ |
51 | 78 |
@@ -29,20 +29,7 @@ | @@ -29,20 +29,7 @@ | ||
29 | 29 | ||
30 | TR_CREATE_INTERFACE(TR_Hashable, 2); | 30 | TR_CREATE_INTERFACE(TR_Hashable, 2); |
31 | 31 | ||
32 | -unsigned long | ||
33 | -TR_hashableGetHash(void * hashable) | ||
34 | -{ | ||
35 | - unsigned long ret; | ||
36 | - | ||
37 | - TR_RETCALL(hashable, TR_Hashable, getHash, ret); | ||
38 | - | ||
39 | - return ret; | ||
40 | -} | ||
41 | - | ||
42 | -void | ||
43 | -TR_hashableHandleDouble(void * hashable, void * new_hashable) | ||
44 | -{ | ||
45 | - TR_CALL(hashable, TR_Hashable, handleDouble, new_hashable); | ||
46 | -} | 32 | +extern inline unsigned long TR_hashableGetHash(void *); |
33 | +extern inline void TR_hashableHandleDouble(void *, void *); | ||
47 | 34 | ||
48 | // vim: set ts=4 sw=4: | 35 | // vim: set ts=4 sw=4: |
@@ -25,32 +25,9 @@ | @@ -25,32 +25,9 @@ | ||
25 | 25 | ||
26 | TR_CREATE_INTERFACE(TR_Iterable, 4); | 26 | TR_CREATE_INTERFACE(TR_Iterable, 4); |
27 | 27 | ||
28 | -void * | ||
29 | -TR_iterableCurrent(void * iterable) | ||
30 | -{ | ||
31 | - void * ret; | ||
32 | - TR_RETCALL(iterable, TR_Iterable, current, ret); | ||
33 | - return ret; | ||
34 | -} | ||
35 | - | ||
36 | -void | ||
37 | -TR_iterableNext(void * iterable) | ||
38 | -{ | ||
39 | - TR_CALL(iterable, TR_Iterable, next); | ||
40 | -} | ||
41 | - | ||
42 | -void | ||
43 | -TR_iterableRewind(void * iterable) | ||
44 | -{ | ||
45 | - TR_CALL(iterable, TR_Iterable, rewind); | ||
46 | -} | ||
47 | - | ||
48 | -int | ||
49 | -TR_iterableValid(void * iterable) | ||
50 | -{ | ||
51 | - int ret; | ||
52 | - TR_RETCALL(iterable, TR_Iterable, valid, ret); | ||
53 | - return ret; | ||
54 | -} | 28 | +extern inline void * TR_iterableCurrent(void *); |
29 | +extern inline void TR_iterableNext(void *); | ||
30 | +extern inline void TR_iterableRewind(void *); | ||
31 | +extern inline int TR_iterableValid(void *); | ||
55 | 32 | ||
56 | // vim: set ts=4 sw=4: | 33 | // vim: set ts=4 sw=4: |
Please
register
or
login
to post a comment