Sha256: 2d5437667f96a5cc45c1f85cbdf14aaa157d0aa0f6fc0c4e2980c601b1634e5e
Contents?: true
Size: 1.03 KB
Versions: 4
Compression:
Stored size: 1.03 KB
Contents
# frozen_string_literal: true module I18n module Tasks module Scanners module OccurrenceFromPosition # Given a path to a file, its contents and a position in the file, # return a {Results::Occurrence} at the position until the end of the line. # # @param path [String] # @param contents [String] contents of the file at the path. # @param position [Fixnum] position just before the beginning of the match. # @return [Results::Occurrence] def occurrence_from_position(path, contents, position, raw_key: nil) line_begin = contents.rindex(/^/, position - 1) line_end = contents.index(/.(?=\r?\n|$)/, position) Results::Occurrence.new( path: path, pos: position, line_num: contents[0..position].count("\n".freeze) + 1, line_pos: position - line_begin + 1, line: contents[line_begin..line_end], raw_key: raw_key) end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems