in include/PatriciaTreeMapAbstractEnvironment.h [289:307]
AbstractValueKind meet_like_operation(
const MapValue& other,
std::function<Domain(const Domain&, const Domain&)> operation) {
try {
m_map.union_with(
[&operation](const Domain& x, const Domain& y) {
Domain result = operation(x, y);
if (result.is_bottom()) {
throw value_is_bottom();
}
return result;
},
other.m_map);
return kind();
} catch (const value_is_bottom&) {
clear();
return AbstractValueKind::Bottom;
}
}