Issue #8839 has been updated by Alexey Muranov.


+1.  I do not want to share my silly code where i would use it, but currently it may look something like that:

```ruby
def MyClass
  # ...
  self
end.define_more_methods(x, y, z).freeze
```

----------------------------------------
Feature #8839: Class and module should return the class or module that was opened
https://bugs.ruby-lang.org/issues/8839#change-47250

* Author: Charles Nutter
* Status: Assigned
* Priority: Normal
* Assignee: Yukihiro Matsumoto
* Category: 
* Target version: next minor
----------------------------------------
With the change for https://bugs.ruby-lang.org/issues/3753, "def" forms now return the symbolic name of the method defined. Because class and module bodies just return the last expression in their bodies, this means they will now usually end up returning a symbol for the last method defined. This does not seem useful or correct.

I think class and module should return a reference to the class or module just opened. This would make the return value useful and consistent.



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