module Transpec::Syntax::Mixin::BlockOwner
Public Instance Methods
block_base_indentation()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 34 def block_base_indentation Util.indentation_of_line(block_node) end
block_beginning_line()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 46 def block_beginning_line block_node.loc.begin.line end
block_body_line()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 50 def block_body_line block_body_node.loc.expression.line end
block_body_node()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 42 def block_body_node block_node.children[2] end
block_body_range()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 66 def block_body_range block_body_node = block_node.children[2] block_body_node.loc.expression end
block_end_line()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 54 def block_end_line block_node.loc.end.line end
block_has_body?()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 38 def block_has_body? !block_body_node.nil? end
convert_singleline_block_to_multiline!()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 13 def convert_singleline_block_to_multiline! return unless block_has_body? # TODO has_inserted_linefeed = false if block_beginning_line == block_body_line replace(range_between_block_begin_and_body, "\n#{block_base_indentation} ") has_inserted_linefeed = true end if block_end_line == block_body_line replace(range_between_block_body_and_end, "\n#{block_base_indentation}") has_inserted_linefeed = true end if has_inserted_linefeed replace(block_node.loc.begin, 'do') replace(block_node.loc.end, 'end') end end
range_between_block_begin_and_body()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 58 def range_between_block_begin_and_body block_node.loc.begin.end.join(block_body_node.loc.expression.begin) end
range_between_block_body_and_end()
click to toggle source
# File lib/transpec/syntax/mixin/block_owner.rb, line 62 def range_between_block_body_and_end block_body_node.loc.expression.end.join(block_node.loc.end.begin) end