$itemMatch method

void $itemMatch({
  1. ITEM_TYPE? $eq,
  2. ITEM_TYPE? $ne,
  3. ITEM_TYPE? $gt,
  4. ITEM_TYPE? $lt,
  5. ITEM_TYPE? $gte,
  6. ITEM_TYPE? $lte,
  7. ITEM_TYPE? every$ne,
})

every$ne表示数组每一个子项都不等于,其它表示数组中任意一项满足对应条件即可

Implementation

void $itemMatch({ITEM_TYPE? $eq, ITEM_TYPE? $ne, ITEM_TYPE? $gt, ITEM_TYPE? $lt, ITEM_TYPE? $gte, ITEM_TYPE? $lte, ITEM_TYPE? every$ne}) {
  if (every$ne == null) {
    final exp = {};
    if ($eq != null) exp['\$eq'] = $eq;
    if ($ne != null) exp['\$ne'] = $ne;
    if ($gt != null) exp['\$gt'] = $gt;
    if ($lt != null) exp['\$lt'] = $lt;
    if ($gte != null) exp['\$gte'] = $gte;
    if ($lte != null) exp['\$lte'] = $lte;
    _cmds['\$elemMatch'] = exp;
  } else {
    _cmds['\$ne'] = every$ne;
  }
}