(line, row, offset)
| 9906 | if (options.$isMultiLine) { |
| 9907 | var len = re.length; |
| 9908 | var matchIterator = function(line, row, offset) { |
| 9909 | var startIndex = line.search(re[0]); |
| 9910 | if (startIndex == -1) |
| 9911 | return; |
| 9912 | for (var i = 1; i < len; i++) { |
| 9913 | line = session.getLine(row + i); |
| 9914 | if (line.search(re[i]) == -1) |
| 9915 | return; |
| 9916 | } |
| 9917 | |
| 9918 | var endIndex = line.match(re[len - 1])[0].length; |
| 9919 | |
| 9920 | var range = new Range(row, startIndex, row + len - 1, endIndex); |
| 9921 | if (re.offset == 1) { |
| 9922 | range.start.row--; |
| 9923 | range.start.column = Number.MAX_VALUE; |
| 9924 | } else if (offset) |
| 9925 | range.start.column += offset; |
| 9926 | |
| 9927 | if (callback(range)) |
| 9928 | return true; |
| 9929 | }; |
| 9930 | } else if (backwards) { |
| 9931 | var matchIterator = function(line, row, startIndex) { |
| 9932 | var matches = lang.getMatchOffsets(line, re); |
nothing calls this directly
no test coverage detected