]> www.ginac.de Git - cln.git/blob - src/integer/hash/cl_I_hashweak_rcpointer.cc
Disable ARM asm implementation of divu_6432_3232_().
[cln.git] / src / integer / hash / cl_I_hashweak_rcpointer.cc
1 // class cl_wht_from_integer_to_rcpointer.
2
3 // General includes.
4 #include "base/cl_sysdep.h"
5
6 // Specification.
7 #include "integer/hash/cl_I_hashweak_rcpointer.h"
8
9
10 // Implementation.
11
12 #include "integer/cl_I.h"
13 #include "base/hash/cl_hash1weak.h"
14
15 namespace cln {
16
17 static void cl_weak_hashtable_from_integer_to_rcpointer_destructor (cl_heap* pointer)
18 {
19         (*(cl_heap_weak_hashtable_from_integer_to_rcpointer*)pointer).~cl_heap_weak_hashtable_from_integer_to_rcpointer();
20 }
21
22 cl_class cl_class_weak_hashtable_from_integer_to_rcpointer = {
23         cl_weak_hashtable_from_integer_to_rcpointer_destructor,
24         0
25 };
26
27 // These are not inline, because they tend to duplicate a lot of template code.
28
29 cl_wht_from_integer_to_rcpointer::cl_wht_from_integer_to_rcpointer (bool (*maygc_htentry) (const cl_htentry_from_integer_to_rcpointer&))
30 {
31         var cl_heap_weak_hashtable_from_integer_to_rcpointer* ht = new cl_heap_weak_hashtable_from_integer_to_rcpointer (maygc_htentry);
32         ht->refcount = 1;
33         ht->type = &cl_class_weak_hashtable_from_integer_to_rcpointer;
34         pointer = ht;
35 }
36
37 cl_rcpointer * cl_wht_from_integer_to_rcpointer::get (const cl_I& x) const
38 {
39         return ((cl_heap_weak_hashtable_from_integer_to_rcpointer*)pointer)->get(x);
40 }
41
42 void cl_wht_from_integer_to_rcpointer::put (const cl_I& x, const cl_rcpointer& y) const
43 {
44         ((cl_heap_weak_hashtable_from_integer_to_rcpointer*)pointer)->put(x,y);
45 }
46
47 }  // namespace cln