/** * Returns the revision range that contains the given line, or * <code>null</code> if there is none. * * @param line the line of interest * @return the corresponding <code>RevisionRange</code> or <code>null</code> */ private RevisionRange getRange(int line) { List<RevisionRange> ranges= getRangeCache(); if (ranges.isEmpty() || line == -1) return null; for (Iterator<RevisionRange> it= ranges.iterator(); it.hasNext();) { RevisionRange range= it.next(); if (contains(range, line)) return range; } // line may be right after the last region RevisionRange lastRegion= ranges.get(ranges.size() - 1); if (line == end(lastRegion)) return lastRegion; return null; }
/** * Returns the revision range that contains the given line, or * <code>null</code> if there is none. * * @param line the line of interest * @return the corresponding <code>RevisionRange</code> or <code>null</code> */ private RevisionRange getRange(int line) { List<RevisionRange> ranges= getRangeCache(); if (ranges.isEmpty() || line == -1) return null; for (RevisionRange range : ranges) { if (contains(range, line)) return range; } // line may be right after the last region RevisionRange lastRegion= ranges.get(ranges.size() - 1); if (line == end(lastRegion)) return lastRegion; return null; }
RevisionRange range= it.next(); ILineRange widgetRange= modelLinesToWidgetLines(range); if (contains(range, documentHoverLine)) { nextWidgetRange= last; break; RevisionRange range= it.previous(); ILineRange widgetRange= modelLinesToWidgetLines(range); if (contains(range, documentHoverLine)) { nextWidgetRange= last; break;
for (RevisionRange range : ranges) { ILineRange widgetRange= modelLinesToWidgetLines(range); if (contains(range, documentHoverLine)) { nextWidgetRange= last; break; RevisionRange range= it.previous(); ILineRange widgetRange= modelLinesToWidgetLines(range); if (contains(range, documentHoverLine)) { nextWidgetRange= last; break;