lib/grub/gem_line.rb in grub-0.0.7 vs lib/grub/gem_line.rb in grub-0.0.8

- old
+ new

@@ -1,15 +1,16 @@ module Grub class GemLine attr_accessor :name, :original_line, :location, :prev_line_comment, :spec, :options - def initialize(name:, original_line: nil, location: nil, prev_line_comment: nil, options: {}) - @name = name - @original_line = original_line - @location = location - @prev_line_comment = prev_line_comment - @options = options + def initialize(*args) + named_params = args.last.respond_to?(:[]) && args.last + @name = (named_params && named_params[:name]) || args[0] + @original_line = (named_params && named_params[:original_line]) || args[1] + @location = (named_params && named_params[:location]) || args[2] + @prev_line_comment = (named_params && named_params[:prev_line_comment]) || args[3] + @options = (named_params && named_params[:options]) || named_params end def comment leading_spaces = original_line[0..leading_spaces_count - 1] if leading_spaces_count > 0 comment = "#{leading_spaces}# #{info}"