bool BooleanIdentifier::matches(const Expression::Ptr &expr) const { return expr->is(Expression::IDBooleanValue) && expr->evaluateEBV(DynamicContext::Ptr()) == m_value; }