Issue #8563 has been updated by sawa (Tsuyoshi Sawada).


It could also be used besides `initialize`:

    def update_something foo
       do_update_something(@foo = foo)
       ...
    end

would become

    def update_something @foo
       do_update_something(@foo)
       ...
    end
----------------------------------------
Feature #8563: Instance variable arguments
https://bugs.ruby-lang.org/issues/8563#change-40091

Author: sawa (Tsuyoshi Sawada)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: syntax
Target version: Next Major


=begin
Often times, people want to assign given arguments to instance variables, especially inside the method `initialize`:

    def initialize foo, bar, buz
      @foo, @bar, @buz = foo, bar, buz
      ...
    end

I propose to let method definition take instance variables as arguments so that:

    def initialize @foo, @bar, @buz
      ...
    end

would be equivalent as above.
=end



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