# HG changeset patch
# User Peter Kovacs <kpeter@inf.elte.hu>
# Date 1253010209 -7200
# Node ID 50d28aa826bb5e2196c8522ed54269c3c92cab06
# Parent 08f7479bbc4500fb408e916af3d5b019c42d1dfc
Fixes in the heap concept to avoid warnings (#180)
diff --git a/lemon/concepts/heap.h b/lemon/concepts/heap.h
a
|
b
|
|
88 | 88 | /// \c Item. It is used internally by the heap implementations to |
89 | 89 | /// handle the cross references. The assigned value must be |
90 | 90 | /// \c PRE_HEAP (<tt>-1</tt>) for each item. |
| 91 | #ifdef DOXYGEN |
91 | 92 | explicit Heap(ItemIntMap &map) {} |
| 93 | #else |
| 94 | explicit Heap(ItemIntMap&) {} |
| 95 | #endif |
92 | 96 | |
93 | 97 | /// \brief Constructor. |
94 | 98 | /// |
… |
… |
|
98 | 102 | /// handle the cross references. The assigned value must be |
99 | 103 | /// \c PRE_HEAP (<tt>-1</tt>) for each item. |
100 | 104 | /// \param comp The function object used for comparing the priorities. |
| 105 | #ifdef DOXYGEN |
101 | 106 | explicit Heap(ItemIntMap &map, const CMP &comp) {} |
| 107 | #else |
| 108 | explicit Heap(ItemIntMap&, const CMP&) {} |
| 109 | #endif |
102 | 110 | |
103 | 111 | /// \brief The number of items stored in the heap. |
104 | 112 | /// |
… |
… |
|
126 | 134 | /// \param i The item to insert. |
127 | 135 | /// \param p The priority of the item. |
128 | 136 | /// \pre \e i must not be stored in the heap. |
| 137 | #ifdef DOXYGEN |
129 | 138 | void push(const Item &i, const Prio &p) {} |
| 139 | #else |
| 140 | void push(const Item&, const Prio&) {} |
| 141 | #endif |
130 | 142 | |
131 | 143 | /// \brief Return the item having minimum priority. |
132 | 144 | /// |
133 | 145 | /// This function returns the item having minimum priority. |
134 | 146 | /// \pre The heap must be non-empty. |
135 | | Item top() const {} |
| 147 | Item top() const { return Item(); } |
136 | 148 | |
137 | 149 | /// \brief The minimum priority. |
138 | 150 | /// |
139 | 151 | /// This function returns the minimum priority. |
140 | 152 | /// \pre The heap must be non-empty. |
141 | | Prio prio() const {} |
| 153 | Prio prio() const { return Prio(); } |
142 | 154 | |
143 | 155 | /// \brief Remove the item having minimum priority. |
144 | 156 | /// |
… |
… |
|
152 | 164 | /// already stored. |
153 | 165 | /// \param i The item to delete. |
154 | 166 | /// \pre \e i must be in the heap. |
| 167 | #ifdef DOXYGEN |
155 | 168 | void erase(const Item &i) {} |
| 169 | #else |
| 170 | void erase(const Item&) {} |
| 171 | #endif |
156 | 172 | |
157 | 173 | /// \brief The priority of the given item. |
158 | 174 | /// |
159 | 175 | /// This function returns the priority of the given item. |
160 | 176 | /// \param i The item. |
161 | 177 | /// \pre \e i must be in the heap. |
| 178 | #ifdef DOXYGEN |
162 | 179 | Prio operator[](const Item &i) const {} |
| 180 | #else |
| 181 | Prio operator[](const Item&) const { return Prio(); } |
| 182 | #endif |
163 | 183 | |
164 | 184 | /// \brief Set the priority of an item or insert it, if it is |
165 | 185 | /// not stored in the heap. |
… |
… |
|
170 | 190 | /// |
171 | 191 | /// \param i The item. |
172 | 192 | /// \param p The priority. |
| 193 | #ifdef DOXYGEN |
173 | 194 | void set(const Item &i, const Prio &p) {} |
| 195 | #else |
| 196 | void set(const Item&, const Prio&) {} |
| 197 | #endif |
174 | 198 | |
175 | 199 | /// \brief Decrease the priority of an item to the given value. |
176 | 200 | /// |
… |
… |
|
178 | 202 | /// \param i The item. |
179 | 203 | /// \param p The priority. |
180 | 204 | /// \pre \e i must be stored in the heap with priority at least \e p. |
| 205 | #ifdef DOXYGEN |
181 | 206 | void decrease(const Item &i, const Prio &p) {} |
| 207 | #else |
| 208 | void decrease(const Item&, const Prio&) {} |
| 209 | #endif |
182 | 210 | |
183 | 211 | /// \brief Increase the priority of an item to the given value. |
184 | 212 | /// |
… |
… |
|
186 | 214 | /// \param i The item. |
187 | 215 | /// \param p The priority. |
188 | 216 | /// \pre \e i must be stored in the heap with priority at most \e p. |
| 217 | #ifdef DOXYGEN |
189 | 218 | void increase(const Item &i, const Prio &p) {} |
| 219 | #else |
| 220 | void increase(const Item&, const Prio&) {} |
| 221 | #endif |
190 | 222 | |
191 | 223 | /// \brief Return the state of an item. |
192 | 224 | /// |
… |
… |
|
196 | 228 | /// In the latter case it is possible that the item will get back |
197 | 229 | /// to the heap again. |
198 | 230 | /// \param i The item. |
| 231 | #ifdef DOXYGEN |
199 | 232 | State state(const Item &i) const {} |
| 233 | #else |
| 234 | State state(const Item&) const { return PRE_HEAP; } |
| 235 | #endif |
200 | 236 | |
201 | 237 | /// \brief Set the state of an item in the heap. |
202 | 238 | /// |
… |
… |
|
205 | 241 | /// to achive better time complexity. |
206 | 242 | /// \param i The item. |
207 | 243 | /// \param st The state. It should not be \c IN_HEAP. |
| 244 | #ifdef DOXYGEN |
208 | 245 | void state(const Item& i, State st) {} |
| 246 | #else |
| 247 | void state(const Item&, State) {} |
| 248 | #endif |
209 | 249 | |
210 | 250 | |
211 | 251 | template <typename _Heap> |