From: shyouhei@... Date: 2018-05-21T09:00:18+00:00 Subject: [ruby-core:87212] [Ruby trunk Feature#14778][Feedback] Make Object#dup accept a block Issue #14778 has been updated by shyouhei (Shyouhei Urabe). Status changed from Open to Feedback Not an immediate NG, but curious why we should do this in core, instead of your gem? Would you mind telling us the reason this should be enabled for all the ruby users around the world? ---------------------------------------- Feature #14778: Make Object#dup accept a block https://bugs.ruby-lang.org/issues/14778#change-72202 * Author: hkdnet (Ko Sato) * Status: Feedback * Priority: Normal * Assignee: * Target version: ---------------------------------------- I'd like to use `Object#dup` with a block, which is equivalent to `dup.tap`. An example for `dup.tap` is here. ```ruby require 'uri' module MyUri class << self def foo_uri base_uri.dup.tap { |e| e.path = '/foo' } end private def base_uri @base_uri ||= URI.parse('http://example.com') end end end ``` With this patch, we can write `base_uri.dup { |e| e.path = '/foo' }` and it's simpler. ---Files-------------------------------- dup_with_block.diff (296 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: