code: function findAllRepeaterRows(repeater, exact, using) {
    using = using || document;
  
    var rows = [];
    var prefixes = ['ng-', 'ng_', 'data-ng-', 'x-ng-', 'ng\\:'];
    for (var p = 0; p < prefixes.length; ++p) {
      var attr = prefixes[p] + 'repeat';
      var repeatElems = using.querySelectorAll('[' + attr + ']');
      attr = attr.replace(/\\/g, '');
      for (var i = 0; i < repeatElems.length; ++i) {
        if (repeaterMatch(repeatElems[i].getAttribute(attr), repeater, exact)) {
          rows.push(repeatElems[i]);
        }
      }
    }
    for (var p = 0; p < prefixes.length; ++p) {
      var attr = prefixes[p] + 'repeat-start';
      var repeatElems = using.querySelectorAll('[' + attr + ']');
      attr = attr.replace(/\\/g, '');
      for (var i = 0; i < repeatElems.length; ++i) {
        if (repeaterMatch(repeatElems[i].getAttribute(attr), repeater, exact)) {
          var elem = repeatElems[i];
          while (elem.nodeType != 8 ||
              !repeaterMatch(elem.nodeValue, repeater)) {
            if (elem.nodeType == 1) {
              rows.push(elem);
            }
            elem = elem.nextSibling;
          }
        }
      }
    }
    return rows;
  }
docs: Find all rows of an ng-repeat.
  
  @param {string} repeater The text of the repeater, e.g. 'cat in cats'.
  @param {boolean} exact Whether the repeater needs to be matched exactly
  @param {Element} using The scope of the search.
  
  @return {Array.<Element>} All rows of the repeater.