1 /* This C header file is generated by NIT to compile modules and programs that requires sorter. */
4 #include "array._sep.h"
5 #include <nit_common.h>
7 extern const classtable_elt_t VFT_AbstractSorter
[];
9 extern const classtable_elt_t VFT_ComparableSorter
[];
10 extern const char *LOCATE_sorter
;
11 extern const int SFT_sorter
[];
12 #define ID_AbstractSorter (SFT_sorter[0])
13 #define COLOR_AbstractSorter (SFT_sorter[1])
14 #define INIT_TABLE_POS_AbstractSorter (SFT_sorter[2] + 0)
15 #define CALL_sorter___AbstractSorter___compare(recv) ((sorter___AbstractSorter___compare_t)CALL((recv), (SFT_sorter[2] + 1)))
16 #define CALL_sorter___AbstractSorter___sort(recv) ((sorter___AbstractSorter___sort_t)CALL((recv), (SFT_sorter[2] + 2)))
17 #define CALL_sorter___AbstractSorter___sub_sort(recv) ((sorter___AbstractSorter___sub_sort_t)CALL((recv), (SFT_sorter[2] + 3)))
18 #define CALL_sorter___AbstractSorter___quick_sort(recv) ((sorter___AbstractSorter___quick_sort_t)CALL((recv), (SFT_sorter[2] + 4)))
19 #define CALL_sorter___AbstractSorter___bubble_sort(recv) ((sorter___AbstractSorter___bubble_sort_t)CALL((recv), (SFT_sorter[2] + 5)))
20 #define CALL_sorter___AbstractSorter___init(recv) ((sorter___AbstractSorter___init_t)CALL((recv), (SFT_sorter[2] + 6)))
21 #define ID_ComparableSorter (SFT_sorter[3])
22 #define COLOR_ComparableSorter (SFT_sorter[4])
23 #define INIT_TABLE_POS_ComparableSorter (SFT_sorter[5] + 0)
24 #define CALL_sorter___ComparableSorter___init(recv) ((sorter___ComparableSorter___init_t)CALL((recv), (SFT_sorter[5] + 1)))
25 typedef val_t (* sorter___AbstractSorter___compare_t
)(val_t self
, val_t param0
, val_t param1
);
26 val_t
sorter___AbstractSorter___compare(val_t self
, val_t param0
, val_t param1
);
27 #define LOCATE_sorter___AbstractSorter___compare "sorter::AbstractSorter::compare"
28 typedef void (* sorter___AbstractSorter___sort_t
)(val_t self
, val_t param0
);
29 void sorter___AbstractSorter___sort(val_t self
, val_t param0
);
30 #define LOCATE_sorter___AbstractSorter___sort "sorter::AbstractSorter::sort"
31 typedef void (* sorter___AbstractSorter___sub_sort_t
)(val_t self
, val_t param0
, val_t param1
, val_t param2
);
32 void sorter___AbstractSorter___sub_sort(val_t self
, val_t param0
, val_t param1
, val_t param2
);
33 #define LOCATE_sorter___AbstractSorter___sub_sort "sorter::AbstractSorter::sub_sort"
34 typedef void (* sorter___AbstractSorter___quick_sort_t
)(val_t self
, val_t param0
, val_t param1
, val_t param2
);
35 void sorter___AbstractSorter___quick_sort(val_t self
, val_t param0
, val_t param1
, val_t param2
);
36 #define LOCATE_sorter___AbstractSorter___quick_sort "sorter::AbstractSorter::quick_sort"
37 typedef void (* sorter___AbstractSorter___bubble_sort_t
)(val_t self
, val_t param0
, val_t param1
, val_t param2
);
38 void sorter___AbstractSorter___bubble_sort(val_t self
, val_t param0
, val_t param1
, val_t param2
);
39 #define LOCATE_sorter___AbstractSorter___bubble_sort "sorter::AbstractSorter::bubble_sort"
40 typedef void (* sorter___AbstractSorter___init_t
)(val_t self
, int* init_table
);
41 void sorter___AbstractSorter___init(val_t self
, int* init_table
);
42 #define LOCATE_sorter___AbstractSorter___init "sorter::AbstractSorter::init"
43 val_t
NEW_AbstractSorter_sorter___AbstractSorter___init();
44 typedef val_t (* sorter___ComparableSorter___compare_t
)(val_t self
, val_t param0
, val_t param1
);
45 val_t
sorter___ComparableSorter___compare(val_t self
, val_t param0
, val_t param1
);
46 #define LOCATE_sorter___ComparableSorter___compare "sorter::ComparableSorter::(sorter::AbstractSorter::compare)"
47 typedef void (* sorter___ComparableSorter___init_t
)(val_t self
, int* init_table
);
48 void sorter___ComparableSorter___init(val_t self
, int* init_table
);
49 #define LOCATE_sorter___ComparableSorter___init "sorter::ComparableSorter::init"
50 val_t
NEW_ComparableSorter_sorter___ComparableSorter___init();