evaluate method
Evaluate the rule against a context
Implementation
bool evaluate(Map<String, dynamic> context) {
final attributeValue = context[attribute];
if (attributeValue == null) return false;
bool result = _evaluateCore(attributeValue);
// Evaluate sub-rules if they exist
if (result && subRules.isNotEmpty) {
return subRules.every((rule) => rule.evaluate(context));
}
return result;
}