12 /* global variables */
14 #define DEFAULT_STORAGE_SIZE 10
15 tab_t
*storage
= NULL
;
17 /* storage functions */
21 if (nb
!= size_tab (storage
)) {
22 storage
= resize_tab (storage
, nb
);
26 double store (int id
, double value
)
28 if (storage
== NULL
) {
29 memory (DEFAULT_STORAGE_SIZE
);
31 return set_tab (storage
, id
, value
);
34 double recall (int id
)
36 if (storage
== NULL
) {
37 memory (DEFAULT_STORAGE_SIZE
);
39 return get_tab (storage
, id
);
42 double increase (int id
)
44 if (storage
== NULL
) {
45 memory (DEFAULT_STORAGE_SIZE
);
47 double val
= get_tab (storage
, id
);
49 set_tab (storage
, id
, ++val
);
54 double decrease (int id
)
56 if (storage
== NULL
) {
57 memory (DEFAULT_STORAGE_SIZE
);
59 double val
= get_tab (storage
, id
);
61 set_tab (storage
, id
, --val
);
68 if (storage
== NULL
) {
69 memory (DEFAULT_STORAGE_SIZE
);
71 int i
, n
= size_tab (storage
);
72 fprintf (stdout
, "storage:");
73 for (i
= 0; i
< n
; i
++) {
74 fprintf (stdout
, " ");
75 fprintf (stdout
, minform
, get_tab (storage
, i
+ 1));
77 fprintf (stdout
, "\n");
82 if (storage
== NULL
) {
83 memory (DEFAULT_STORAGE_SIZE
);
85 int i
, n
= size_tab (storage
);
86 for (i
= 0; i
< n
; i
++) {
87 set_tab (storage
, i
, 0);
91 /* vim: set ts=4 sw=4 et: */