module RuboCop::Cop::RangeHelp

Methods that calculate and return Parser::Source::Ranges

Private Instance Methods

arguments_range(node) click to toggle source
# File lib/rubocop/sketchup/range_help.rb, line 27
def arguments_range(node)
  begin_pos = node.arguments.first.loc.expression.begin_pos
  end_pos = node.arguments.last.loc.expression.end_pos
  range_between(begin_pos, end_pos)
end
conditional_range(node) click to toggle source
# File lib/rubocop/sketchup/range_help.rb, line 33
def conditional_range(node)
  if node.modifier_form?
    range_between(node.loc.keyword.begin_pos,
                  node.loc.expression.end_pos)
  else
    :expression
  end
end
file_ext_range(argument_node) click to toggle source
# File lib/rubocop/sketchup/range_help.rb, line 42
def file_ext_range(argument_node)
  filename = argument_node.str_content
  ext_size = File.extname(filename).size
  end_pos = argument_node.loc.end.begin_pos
  begin_pos = end_pos - ext_size
  range_between(begin_pos, end_pos)
end
range_with_receiver(node) click to toggle source
# File lib/rubocop/sketchup/range_help.rb, line 10
def range_with_receiver(node)
  receiver = node.receiver
  loc_begin = if receiver.send_type?
                receiver.loc.selector.begin_pos
              else
                receiver.loc.expression.begin_pos
              end
  loc_end = node.loc.selector.end_pos
  range_between(loc_begin, loc_end)
end
string_contents_range(node) click to toggle source
# File lib/rubocop/sketchup/range_help.rb, line 21
def string_contents_range(node)
  begin_pos = node.loc.begin.end_pos
  end_pos = node.loc.end.begin_pos
  range_between(begin_pos, end_pos)
end