[ruby-core:77335] [Ruby trunk Bug#12521] Syntax for retrieving argument without removing it from double-splat catch-all
From:
eregontp@...
Date:
2016-09-21 11:24:14 UTC
List:
ruby-core #77335
SXNzdWUgIzEyNTIxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgQmVub2l0IERhbG96ZS4KCgpHdXlyZW4g SG93ZSB3cm90ZToKCj4gYGBgcnVieQo+IGRlZiByZW5kZXIgbmFtZTo6LCBzb21ldGhpbmc6Oiwg Zm9vOjosICoqY29udGV4dAo+ICAg4oCmIG5vdyB1c2UgZm9vIOKApgo+IGVuZAo+IGBgYAoKU28g dGhpcyB3b3VsZCBiZSBzeW50YWN0aWMgc3VnYXIgZm9yIGVzc2VudGlhbGx5IHRoaXM/CgpgYGBy dWJ5CmRlZiByZW5kZXIgKipjb250ZXh0CiAgbmFtZSA9IGNvbnRleHQuZmV0Y2ggOm5hbWUKICBz b21ldGhpbmcgPSBjb250ZXh0LmZldGNoIDpzb21ldGhpbmcKICBmb28gPSBjb250ZXh0LmZldGNo IDpmb28KICDigKYgbm93IHVzZSBmb28g4oCmCmVuZApgYGAKCkl0J3MgdHJ1ZSB0aGF0J3MgaXQn cyB2ZXJib3NlLgpJJ20gbm90IHBhcnRpY3VsYXJseSBmb25kIG9mIGRvdWJsZSBvciB0cmlwbGUg b3BlcmF0b3JzIHdpdGggc2xpZ2h0bHkgZGlmZmVyZW50IHNlbWFudGljcyB0aG91Z2guCgpGcm9t IGEgZGVzaWduIHBvaW50IG9mIHZpZXcsIGl0IHNlZW1zIGEgcGFyYW1ldGVyIG9iamVjdCB3b3Vs ZCB3b3JrIHdlbGwgaGVyZSwKYW5kIHdvdWxkIHBvdGVudGlhbGx5IGF2b2lkIGNvbmZsaWN0cyBm b3IgdHdvIDpuYW1lIHdpdGggZGlmZmVyZW50IG1lYW5pbmcuCgotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCkJ1ZyAjMTI1MjE6IFN5bnRheCBmb3IgcmV0cmlldmluZyBh cmd1bWVudCB3aXRob3V0IHJlbW92aW5nIGl0IGZyb20gZG91YmxlLXNwbGF0IGNhdGNoLWFsbApo dHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTI1MjEjY2hhbmdlLTYwNTgxCgoqIEF1 dGhvcjogR3V5cmVuIEhvd2UKKiBTdGF0dXM6IENsb3NlZAoqIFByaW9yaXR5OiBOb3JtYWwKKiBB c3NpZ25lZTogCiogcnVieSAtdjogCiogQmFja3BvcnQ6IDIuMTogVU5LTk9XTiwgMi4yOiBVTktO T1dOLCAyLjM6IFVOS05PV04KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQpUaGVyZSBpcyBhbiBpbnRlcmVzdGluZyBzdHlsZSBvZiBwcm9ncmFtbWluZyB0aGF0IGlzICph bG1vc3QqIHJlYWxseSBlYXN5IHRvIGRvIGluIFJ1YnkuIEl0IHdvdWxkIHdvcmsgZWxlZ2FudGx5 IHdpdGggYSBzaW1wbGUgY2hhbmdlLiBBIGRvdWJsZS1jb2xvbiBrZXl3b3JkIGFyZ3VtZW50IHNo b3VsZCBiZSBhdmFpbGFibGUgdGhhdCB3aWxsIHN0aWxsIGxlYXZlIHRoZSBzYW1lIGFyZ3VtZW50 IGNhcHR1cmVkIGJ5IGEgZG91YmxlLXNwbGF0IGFyZ3VtZW50IGlmIHByZXNlbnQuIFdpdGggdGhp cyBhdmFpbGFibGUsIGl0IGJlY29tZXMgZWFzeSB0byBwYXNzIGRvd24gYSAiY29udGV4dCIgdGhy b3VnaCBhIGNhbGwgY2hhaW4uCgpDb25zaWRlciB0aGlzOgoKYGBgcnVieQpkZWYgY29udHJvbGxl ciBuYW1lOjosICoqY29udGV4dAogIOKApgogIGxvZ190aGVuX3JlbmRlciBzb21ldGhpbmc6LCBu YW1lOiwgKipjb250ZXh0CmVuZAoKZGVmIGxvZ190aGVuX3JlbmRlciAqKmNvbnRleHQKICBsb2cg Y29udGV4dAogIGNvbXBsZXhfbG9naWNfdGhlbl9yZW5kZXIgKipjb250ZXh0CmVuZAoKZGVmIGNv bXBsZXhfbG9naWNfdGhlbl9yZW5kZXIgbmFtZTo6LCAqKmNvbnRleHQK4oCmCkJ1bmNoIG9mIGZ1 cnRoZXIgY2FsbHMKCmRlZiByZW5kZXIgbmFtZTo6LCBzb21ldGhpbmc6OiwgKipjb250ZXh0CiAg 4oCmCmVuZApgYGAKCk5vdyBhc3N1bWUgSSBkZWNpZGUgcmVuZGVyIG5lZWRzIGEgZm9vIGFyZ3Vt ZW50LCB0aGF0IEkgb2J0YWluIGluIG15IGNvbnRyb2xsZXIuIFRoZSBvbmx5IGZ1bmN0aW9ucyB0 aGF0IGFyZSBhd2FyZSBvZiBvciBoYXZlIGFueSBuZWVkIGZvciB0aGUgYXJndW1lbnQgYXJlIGNv bnRyb2xsZXIgYW5kIHJlbmRlci4gV2l0aCBmdW5jdGlvbnMgd3JpdHRlbiBpbiB0aGlzIHN0eWxl LCBJIG9ubHkgbmVlZCB0byBtb2RpZnkgdGhlIHR3byBmdW5jdGlvbnMgdGhhdCBuZWVkIHRvIGtu b3cgYWJvdXQgdGhlIGFyZ3VtZW50OgoKYGBgcnVieQpkZWYgY29udHJvbGxlciBuYW1lOjosICoq Y29udGV4dAogIOKApgogIGxvZ190aGVuX3JlbmRlciBzb21ldGhpbmc6LCBuYW1lOiwgZm9vOiBm b29fdmFsdWUsICoqY29udGV4dAplbmQKCuKApiBubyBjaGFuZ2VzIOKApgoKZGVmIHJlbmRlciBu YW1lOjosIHNvbWV0aGluZzo6LCBmb286OiAqKmNvbnRleHQKICDigKYgbm93IHVzZSBmb28g4oCm CmVuZApgYGAKClRoaXMgaXMsIEkgYWNjZXB0LCB1bnVzdWFsLiBJJ3ZlIG5vdCBzZWVuIGEgbGFu Z3VhZ2UgdGhhdCBvZmZlcnMgdGhpcyBzb3J0IG9mIGZlYXR1cmUgKEkgY2FsbCB0aGVtLCBmb3Ig dmFyaW91cyByZWFzb24gSSBkb24ndCBoYXZlIHRpbWUgdG8gZ28gaW50byBub3csIEZSRVNUIGZ1 bmN0aW9ucykuIEkgY2FuIGJhc2ljYWxseSBpbXBsZW1lbnQgdGhpcyBub3cgd2l0aCBhIGRlY29y YXRvciwgYnV0IGl0J3MgYSBsaXR0bGUgdWdseSBhbmQgc2xvdy4KCkl0IGp1c3Qgb2NjdXJyZWQg dG8gbWUgdGhhdCBhbiBhbHRlcm5hdGl2ZSB3b3VsZCBiZSBhIHRyaXBsZS1zcGxhdCBmaW5hbCBh cmd1bWVudCAob3Igc29tZSBzdWNoKSB0aGF0IGdhdGhlcnMgYWxsIHRoZSBrZXl3b3Jkcy4KClRo ZXJlIGlzIGEgcmVsYXRlZCBwcm9ibGVtIHdpdGggdGhlIHdheSBkb3VibGUtc3BsYXQgYW5kIHJl Z3VsYXIga2V5d29yZCBhcmd1bWVudHMgaW50ZXJhY3QgdGhhdCBzaG91bGQgYmUgZml4ZWQgYW55 d2F5LgoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTogPG1h aWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+ CjxodHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5 LWNvcmU+Cg==