read method

  1. @override
Future<ResourceTry<ByteData>> read(
  1. {IntRange? range}

Reads the bytes at the given range.

When range is null, the whole content is returned. Out-of-range indexes are clamped to the available length automatically.


Future<ResourceTry<ByteData>> read({IntRange? range}) async =>
    (await bytes()).map((value) {
      if (range == null) {
        return value;

      IntRange range2 =
          IntRange(max(0, range.first), min(range.last, value.lengthInBytes));

      return value.buffer.asByteData(range2.first, range2.length);