whereOp method

DbQueryBuilder<T> whereOp(
  1. String column,
  2. String op,
  3. Object? value
)

Implementation

DbQueryBuilder<T> whereOp(String column, String op, Object? value) {
  final upper = op.toUpperCase();
  if (!_allowedOps.contains(upper)) {
    throw ArgumentError('Operator not allowed: $op');
  }
  if (value == null) {
    final rewritten = (upper == '=' || upper == 'IS') ? 'IS NULL'
        : (upper == '!=' || upper == '<>' || upper == 'IS NOT') ? 'IS NOT NULL'
        : throw ArgumentError("Operator '$op' cannot be used with null");
    _whereClauses.add('${_quoteId(column)} $rewritten');
  } else {
    _whereClauses.add('${_quoteId(column)} $upper ?');
    _whereParams.add(value);
  }
  return this;
}