-#include <algorithm>
+#include <msp/core/algorithm.h>
#include <msp/core/maputils.h>
#include "tool.h"
#include "toolchain.h"
void Toolchain::add_toolchain(Toolchain *chain)
{
- chains.push_back(chain);
+ auto i = upper_bound(chains, chain->get_priority(), [](int p, Toolchain *tc){ return p>tc->get_priority(); });
+ chains.insert(i, chain);
}
bool Toolchain::has_tool(const string &tag) const