class RuboCop::Cop::Sorbet::EmptyLineAfterSig

def lines_between(node1, node2, buffer: processed_source.buffer)

def lines_between(node1, node2, buffer: processed_source.buffer)
  end_of_node1_pos   = node1.source_range.end_pos
  start_of_node2_pos = node2.source_range.begin_pos
  string_in_between = buffer.slice(end_of_node1_pos...start_of_node2_pos)
  # Fallbacks handle same line edge case
  begin_offset = string_in_between.index("\n")  || 0
  end_offset   = string_in_between.rindex("\n") || string_in_between.length - 1
  Parser::Source::Range.new(
    buffer,
    end_of_node1_pos + begin_offset + 1, # +1 to exclude post-node1 newline
    end_of_node1_pos + end_offset   + 1, # +1 to include pre-node2  newline
  )
end