Issue #5825 has been updated by Benoit Daloze.


I think most of the time you need to parse or check your arguments, in which case this syntax would not be practical.
Otherwise, you could use Struct to avoid the duplication:

  class Me < Struct.new(:name, :age, :location)
  end

----------------------------------------
Feature #5825: Sweet instance var assignment in the object initializer
https://bugs.ruby-lang.org/issues/5825

Author: Gosha Arinich
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 


I'm very excited about this feature in CoffeeScript, and think it might be a nice-to-have thing in Ruby 2.0.

That's how I think it would look like:

`class Me
  def initialize(@name, @age, @location); end
end`

So we can declare @variables in the initializer method parameters definition to avoid assigning instance variables from method arguments by hand, like:

`class Me
  def initialize(name, age, location)
    @name = name
    @age = age
    @location = location
  end
end`

Want to hear what do you guys think, does that feature worth being included in 2.0?


-- 
http://redmine.ruby-lang.org