Author: silene
Date: Sun May 17 22:31:08 2009
New Revision: 35718
URL: http://svn.gna.org/viewcvs/wesnoth?rev=35718&view=rev
Log:
Removed code duplication.
Modified:
trunk/src/unit_map.cpp
trunk/src/unit_map.hpp
Modified: trunk/src/unit_map.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/unit_map.cpp?rev=35718&r1=35717&r2=35718&view=diff
==============================================================================
--- trunk/src/unit_map.cpp (original)
+++ trunk/src/unit_map.cpp Sun May 17 22:31:08 2009
@@ -68,31 +68,11 @@
return unit_iterator(iter, this);
}
-
-unit_map::const_unit_iterator unit_map::find(const map_location &loc) const {
- lmap::const_iterator loc_iter = lmap_.find(loc);
- if (loc_iter == lmap_.end()) {
- return const_unit_iterator(map_.end(), this);
- }
-
- umap::const_iterator iter = map_.find(loc_iter->second);
-
- assert(is_valid(iter));
- return const_unit_iterator(iter, this);
-}
-
unit_map::unit_iterator unit_map::find(const size_t &id) {
umap::iterator iter = map_.find(id);
iter = is_valid(iter) ? iter : map_.end();
return unit_iterator(iter, this);
-}
-
-unit_map::const_unit_iterator unit_map::find(const size_t &id) const {
- umap::const_iterator iter = map_.find(id);
- iter = is_valid(iter) ? iter : map_.end();
-
- return const_unit_iterator(iter, this);
}
unit_map::unit_iterator unit_map::begin() {
@@ -251,16 +231,6 @@
LOG_NG << "unit_map::clean_invalid - removed " << num_cleaned << "
invalid map entries.\n";
}
-unit_map::const_unit_iterator unit_map::find_leader(int side) const
-{
- unit_map::const_iterator i = begin(), i_end = end();
- for (; i != i_end; ++i) {
- if (static_cast<int>(i->second.side()) == side &&
i->second.can_recruit())
- return i;
- }
- return i_end;
-}
-
unit_map::unit_iterator unit_map::find_leader(int side)
{
unit_map::iterator i = begin(), i_end = end();
Modified: trunk/src/unit_map.hpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/unit_map.hpp?rev=35718&r1=35717&r2=35718&view=diff
==============================================================================
--- trunk/src/unit_map.hpp (original)
+++ trunk/src/unit_map.hpp Sun May 17 22:31:08 2009
@@ -283,11 +283,14 @@
unit_iterator find(const map_location& loc) ;
unit_iterator find(const unit_id_type& id);
- const_unit_iterator find(const map_location& loc) const;
- const_unit_iterator find(const unit_id_type& id) const;
-
- const_unit_iterator find_leader(int side) const;
+ const_unit_iterator find(const map_location &loc) const
+ { return const_cast<unit_map *>(this)->find(loc); }
+ const_unit_iterator find(const unit_id_type &id) const
+ { return const_cast<unit_map *>(this)->find(id); }
+
unit_iterator find_leader(int side);
+ const_unit_iterator find_leader(int side) const
+ { return const_cast<unit_map *>(this)->find_leader(side); }
size_t count(const map_location& loc) const { return lmap_.count(loc); }
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits