Fenix @develop
 
Loading...
Searching...
No Matches
fenix_stack.h
1#define __fenix_dynamic_array_type int
2#define __fenix_dynamic_array_typename int_stack
3#include "fenix_dynamic_array.h"
4#undef __fenix_dynamic_array_type
5#undef __fenix_dynamic_array_typename
6
7typedef __fenix_int_stack_dynamic_array_t __fenix_stack_t;
8
9static inline
10void __fenix_int_stack_init(__fenix_stack_t *s,
11 int max_size)
12{
13 __fenix_int_stack_dynamic_array_init(s, max_size);
14}
15
16static inline
17void __fenix_int_stack_destroy(__fenix_stack_t *s)
18{
19 __fenix_int_stack_dynamic_array_destroy(s);
20}
21
22static inline
23void __fenix_int_stack_push(__fenix_stack_t *s,
24 int element)
25{
26 __fenix_int_stack_dynamic_array_inc(s);
27 s->elements[s->size-1] = element;
28}
29
30static inline
31int __fenix_int_stack_pop(__fenix_stack_t *s)
32{
33 int ret = s->elements[s->size-1];
34 __fenix_int_stack_dynamic_array_dec(s);
35 return ret;
36}
37
38static inline
39void __fenix_int_stack_clear(__fenix_stack_t *s)
40{
41 __fenix_int_stack_dynamic_array_clear(s);
42}