bool leq()

in include/AbstractDomain.h [385:407]


  bool leq(const Derived& other) const override {
    if (is_bottom()) {
      return true;
    }
    if (other.is_bottom()) {
      return false;
    }
    if (other.is_top()) {
      return true;
    }
    if (is_top()) {
      return false;
    }
    RUNTIME_CHECK(m_kind == AbstractValueKind::Value,
                  invalid_abstract_value()
                      << expected_kind(AbstractValueKind::Value)
                      << actual_kind(m_kind));
    RUNTIME_CHECK(other.m_kind == AbstractValueKind::Value,
                  invalid_abstract_value()
                      << expected_kind(AbstractValueKind::Value)
                      << actual_kind(other.m_kind));
    return m_value.leq(other.m_value);
  }