code: function (valueSelector, matcher, isRoot) {
    if (_.isRegExp(valueSelector)) {
      matcher._isSimple = false;
      return convertElementMatcherToBranchedMatcher(
        regexpElementMatcher(valueSelector));
    } else if (isOperatorObject(valueSelector)) {
      return operatorBranchedMatcher(valueSelector, matcher, isRoot);
    } else {
      return convertElementMatcherToBranchedMatcher(
        equalityElementMatcher(valueSelector));
    }
  }
docs: Takes in a selector that could match a key-indexed value in a document; eg, {$gt: 5, $lt: 9}, or a regular expression, or any non-expression object (to indicate equality).  Returns a branched matcher: a function mapping [branched value]->result object.