summaryrefslogtreecommitdiff
path: root/COPYING
diff options
context:
space:
mode:
authorJeremy Evans <code@jeremyevans.net>2021-10-27 10:35:54 -0700
committerJeremy Evans <code@jeremyevans.net>2021-11-18 09:47:40 -0800
commit75ecbda438670ec12641d1324d0e81a52ee02e0a (patch)
tree6ca80769c4b2ebdcababc30759ae7872275c19b8 /COPYING
parentec574ab3453709490b53b5cc761ec158103fe42a (diff)
downloadruby-75ecbda438670ec12641d1324d0e81a52ee02e0a.tar.gz
Make Module#{public,private,protected,module_function} return arguments
Previously, each of these methods returned self, but it is more useful to return arguments, to allow for simpler method decorators, such as: ```ruby cached private def foo; some_long_calculation; end ``` Where cached sets up caching for the method. For each of these methods, the following behavior is used: 1) No arguments returns nil 2) Single argument is returned 3) Multiple arguments are returned as an array The single argument case is really the case we are trying to optimize for, for the same reason that def was changed to return a symbol for the method. Idea and initial patch from Herwin Quarantainenet. Implements [Feature #12495]
Diffstat (limited to 'COPYING')
0 files changed, 0 insertions, 0 deletions