Etterna 0.74.4
Loading...
Searching...
No Matches
Foreach.h
1#ifndef Foreach_H
2#define Foreach_H
3
5#define FOREACH(elemType, vect, var) \
6 \
7 for (std::vector<elemType>::iterator var = (vect).begin(); \
8 (var) != (vect).end(); \
9 ++(var))
12#define FOREACH_CONST(elemType, vect, var) \
13 \
14 for (std::vector<elemType>::const_iterator var = (vect).begin(); \
15 (var) != (vect).end(); \
16 ++(var))
17
19#define FOREACHD(elemType, vect, var) \
20 \
21 for (deque<elemType>::iterator var = (vect).begin(); \
22 (var) != (vect).end(); \
23 ++(var))
26#define FOREACHD_CONST(elemType, vect, var) \
27 \
28 for (deque<elemType>::const_iterator var = (vect).begin(); \
29 (var) != (vect).end(); \
30 ++(var))
31
33#define FOREACHS(elemType, vect, var) \
34 \
35 for (set<elemType>::iterator var = (vect).begin(); (var) != (vect).end(); \
36 ++(var))
39#define FOREACHS_CONST(elemType, vect, var) \
40 \
41 for (set<elemType>::const_iterator var = (vect).begin(); \
42 (var) != (vect).end(); \
43 ++(var))
44
46#define FOREACHL(elemType, vect, var) \
47 \
48 for (list<elemType>::iterator var = (vect).begin(); (var) != (vect).end(); \
49 ++(var))
52#define FOREACHL_CONST(elemType, vect, var) \
53 \
54 for (list<elemType>::const_iterator var = (vect).begin(); \
55 (var) != (vect).end(); \
56 ++(var))
57
59#define FOREACHM(keyType, valType, vect, var) \
60 \
61 for (map<keyType, valType>::iterator var = (vect).begin(); \
62 (var) != (vect).end(); \
63 ++(var))
66#define FOREACHM_CONST(keyType, valType, vect, var) \
67 \
68 for (map<keyType, valType>::const_iterator var = (vect).begin(); \
69 (var) != (vect).end(); \
70 ++(var))
71
73#define FOREACHMM(keyType, valType, vect, var) \
74 \
75 for (multimap<keyType, valType>::iterator var = (vect).begin(); \
76 (var) != (vect).end(); \
77 ++(var))
78
81#define FOREACHMM_CONST(keyType, valType, vect, var) \
82 \
83 for (multimap<keyType, valType>::const_iterator var = (vect).begin(); \
84 (var) != (vect).end(); \
85 ++(var))
86
88#define FOREACHUM(keyType, valType, vect, var) \
89 \
90 for (unordered_map<keyType, valType>::iterator var = (vect).begin(); \
91 (var) != (vect).end(); \
92 ++(var))
93
96#define FOREACHUM_CONST(keyType, valType, vect, var) \
97 \
98 for (unordered_map<keyType, valType>::const_iterator var = (vect).begin(); \
99 (var) != (vect).end(); \
100 ++(var))
101
102#endif