preHighlightLines method

Future<void> preHighlightLines(
  1. int startLine,
  2. int endLine,
  3. String getLineText(
    1. int
    )
)

Implementation

Future<void> preHighlightLines(
  int startLine,
  int endLine,
  String Function(int) getLineText,
) async {
  if (_preHighlightInFlight != null &&
      _preHighlightInFlightVersion == _version) {
    return _preHighlightInFlight;
  }

  final requestVersion = _version;
  _preHighlightInFlightVersion = requestVersion;
  final future = _preHighlightLinesInternal(
    startLine,
    endLine,
    getLineText,
    requestVersion,
  );
  _preHighlightInFlight = future;

  try {
    await future;
  } finally {
    if (identical(_preHighlightInFlight, future)) {
      _preHighlightInFlight = null;
      _preHighlightInFlightVersion = -1;
    }
  }
}