| 883 | } |
| 884 | |
| 885 | std::size_t Map::deleteIrregularObjects() |
| 886 | { |
| 887 | std::size_t result = 0; |
| 888 | std::set<Object*> unhandled; |
| 889 | for (auto object : irregular_objects) |
| 890 | { |
| 891 | for (auto part : parts) |
| 892 | { |
| 893 | if (part->deleteObject(object)) |
| 894 | { |
| 895 | ++result; |
| 896 | goto next_object; |
| 897 | } |
| 898 | } |
| 899 | unhandled.insert(object); |
| 900 | next_object: |
| 901 | ; // nothing else |
| 902 | } |
| 903 | |
| 904 | irregular_objects.swap(unhandled); |
| 905 | return result; |
| 906 | } |
| 907 | |
| 908 | |
| 909 | void Map::getSelectionToSymbolCompatibility(const Symbol* symbol, bool& out_compatible, bool& out_different) const |
no test coverage detected