Feature #11919
Passing a module directly
Status:
Feedback
Priority:
Normal
Assignee:
-
Target version:
-
Description
Refinement requires a named module:
module MyRefinement
refine ...
...
end
using MyRefinement
but often (but not always), refinements are called by the using
command only in once in a single file, and should not need to be named in such case. Also, the purpose of refinement is to not pollute classes with methods. Necessity to define a module and polluting the name space looks to me to go against this idea.
I would like to do:
using Module.new do
refine ...
...
end
Updated by nobu (Nobuyoshi Nakada) about 5 years ago
- Description updated (diff)
- Status changed from Open to Feedback
You can write it as
using Module.new {
refine ...
...
}
Or without Module.new
?
using do
refine ...
...
end
Updated by sawa (Tsuyoshi Sawada) about 5 years ago
Nobuyoshi Nakada wrote:
You can write it as
using Module.new { refine ... ... }
Right. I had forgotten about operator precedence. My example did not make sense.
Or without
Module.new
?using do refine ... ... end
I think this is what I actually wanted to ask for.