in include/AbstractDomain.h [490:505]
void join_like_operation_with(const Derived& other,
std::function<void()> operation) {
if (is_top() || other.is_bottom()) {
return;
}
if (other.is_top()) {
set_to_top();
return;
}
if (is_bottom()) {
m_kind = other.m_kind;
m_value = other.m_value;
return;
}
operation();
}