private static function consumeWhitespace()

in src/unparsed-blocks/LinkReferenceDefinition.php [120:140]


  private static function consumeWhitespace(Lines $lines): ?Lines {
    if ($lines->isEmpty()) {
      return null;
    }

    list($first, $rest) = $lines->getFirstLineAndRest();
    $len = Str\length($first);
    for ($i = 0; $i < $len; ++$i) {
      $char = $first[$i];
      if ($char === ' ' || $char === "\t") {
        continue;
      }
      return $lines->withoutFirstNBytes($i);
    }

    // entire first line was whitespace
    if ($rest->isEmpty()) {
      return $rest;
    }
    return $rest->withLeftTrimmedFirstLine();
  }