matches method

  1. @override
bool matches(
  1. DataObject object
)
override

Evaluates this filter against object and returns whether it matches.

This provides in-memory filter evaluation with semantics matching the PostgreSQL implementation:

  • String contains/isIn use case-insensitive regex matching
  • List contains checks element membership
  • null comparisons use == null / != null semantics

Implementation

@override
bool matches(DataObject object) => isConjunction
    ? filters.every((f) => f.matches(object))
    // A group without operands is unconstrained, consistent with [isEmpty].
    : filters.isEmpty || filters.any((f) => f.matches(object));