class Synvert::Core::Rewriter::RemoveAction
RemoveAction
to remove current node.
Public Class Methods
new(instance)
click to toggle source
Calls superclass method
Synvert::Core::Rewriter::Action::new
# File lib/synvert/core/rewriter/action/remove_action.rb, line 6 def initialize(instance) super(instance, nil) end
Public Instance Methods
begin_pos()
click to toggle source
Begin position of code to replace.
@return [Integer] begin position.
# File lib/synvert/core/rewriter/action/remove_action.rb, line 13 def begin_pos if take_whole_line? start_index else @node.loc.expression.begin_pos end end
end_pos()
click to toggle source
End position of code to replace.
@return [Integer] end position.
# File lib/synvert/core/rewriter/action/remove_action.rb, line 24 def end_pos if take_whole_line? end_index else @node.loc.expression.end_pos end end
rewritten_code()
click to toggle source
The rewritten code, always empty string.
# File lib/synvert/core/rewriter/action/remove_action.rb, line 33 def rewritten_code '' end
Private Instance Methods
end_index()
click to toggle source
# File lib/synvert/core/rewriter/action/remove_action.rb, line 48 def end_index index = file_source[@node.loc.expression.end_pos..-1].index("\n") index ? @node.loc.expression.end_pos + index + "\n".length : @node.loc.expression.end_pos end
file_source()
click to toggle source
# File lib/synvert/core/rewriter/action/remove_action.rb, line 53 def file_source @file_source ||= @instance.file_source end
start_index()
click to toggle source
# File lib/synvert/core/rewriter/action/remove_action.rb, line 43 def start_index index = file_source[0..@node.loc.expression.begin_pos].rindex("\n") index ? index + "\n".length : @node.loc.expression.begin_pos end
take_whole_line?()
click to toggle source
# File lib/synvert/core/rewriter/action/remove_action.rb, line 39 def take_whole_line? @node.to_source == file_source[start_index...end_index].strip end