module RuboCop::Cop::SurroundingSpace
Common functionality for checking surrounding space.
Public Instance Methods
index_of_first_token(node)
click to toggle source
# File lib/rubocop/cop/mixin/surrounding_space.rb, line 14 def index_of_first_token(node) range = node.source_range token_table[range.line][range.column] end
index_of_last_token(node)
click to toggle source
# File lib/rubocop/cop/mixin/surrounding_space.rb, line 19 def index_of_last_token(node) range = node.source_range table_row = token_table[range.last_line] (0...range.last_column).reverse_each do |c| ix = table_row[c] return ix if ix end end
space_between?(t1, _t2)
click to toggle source
# File lib/rubocop/cop/mixin/surrounding_space.rb, line 7 def space_between?(t1, _t2) # Check if the range between the tokens starts with a space. It can # contain other characters, e.g. a unary plus, but it must start with # space. t1.pos.source_buffer.source.match(/\G\s/, t1.pos.end_pos) end
token_table()
click to toggle source
# File lib/rubocop/cop/mixin/surrounding_space.rb, line 28 def token_table @token_table ||= begin table = {} @processed_source.tokens.each_with_index do |t, ix| table[t.pos.line] ||= {} table[t.pos.line][t.pos.column] = ix end table end end