[#119637] Behavior of raising from rescue blocks when multiple rescue blocks exist — Rodrigo Rosenfeld Rosas via ruby-core <ruby-core@...>
Hello, I couldn't find any documentation about the subject, so I thought
3 messages
2024/10/29
[ruby-core:119595] [Ruby master Feature#15381] Let double splat call `to_h` implicitly
From:
"zverok (Victor Shepelev) via ruby-core" <ruby-core@...>
Date:
2024-10-23 07:57:18 UTC
List:
ruby-core #119595
SXNzdWUgIzE1MzgxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp Lg0KDQoNCj4gSSB0aGluayB0aGF0IHdvdWxkIGJlIGF3ZXNvbWUuIElmIEkgZG8gYG90aGVyX21l dGhvZCgqKm1vZGVsKWAgYW5kIHRoYXQgbW9kZWwgaXMgcmVwcmVzZW50YWJsZSBhcyBhIGhhc2gs IHBhc3NpbmcgaXQgYXMga2V5d29yZCBhcmd1bWVudHMgaXMgYmVhdXRpZnVsLg0KDQouLi51bnRp bCB5b3UgcGFzc2VkIGl0IGVycm9uZW91c2x5LCBhbmQgaXQgd2FzIG5ldmVyIG1lYW50IHRvIGJl LCBhbmQgdGhlIGVycm9yIGhhcHBlbmVkIG5vdCB3aGVyZSBpdCBzaG91bGQgaGFwcGVuIGJ1dCBp biBzb21lIGNvbXBsZXRlbHkgZGlmZmVyZW50IHBsYWNlLg0KDQouLi51bnRpbCBzb21lYm9keSB0 cmllcyB0byBtYWtlIGhlYWRzIG9yIHRhaWxzIGZyb20gdGhlIGxlZ2FjeSBjb2RlYmFzZSBhbmQg YXNzdW1lcyB0aGF0IHNvbWV0aGluZyB0aGF0IGlzIGludm9rZWQgd2l0aCBgKip2YWx1ZWAgaXMg aGFzaC1saWtlLCB3aGlsZSBpbiBmYWN0LCBpdCB3YXMgYSB2YWx1ZSBvYmplY3QsIGFuZCB0aGVy ZSBpcyBubyB3YXkgdG8ga25vdyBpdCB3aXRob3V0IGNoYXNpbmcgaXQgYmFjayBhbmQgZm9ydGgg YnkgY2FsbCBzdGFjay4NCg0KTm93LCBfaW1hZ2luZV8gaWYgdGhhdCB3YXMgdGhlIGF1dGhvcuKA mXMgaW50ZW50aW9uICjigJxoZXJlIHdlIHVucGFjayBvdXIgbW9kZWwgaW50byB0aGUga2V5d29y ZCBhcmdz4oCdKSBhbmQgdGhlIGF1dGhvciBqdXN0IHdyb3RlIChsaWtlLCBmaXZlIG1vcmUgY2hh cmFjdGVycykNCmBgYHJ1YnkNCm90aGVyX21ldGhvZCgqKm1vZGVsLnRvX2gpDQpgYGANCi4uLmFu ZCB0aGUgcmVhZGVyIGltbWVkaWF0ZWx5IHNlZXMgd2hlcmUgdGhlIOKAnHRyYW5zaXRpb24gcG9p bnTigJ0gaXMgZnJvbSB2YWx1ZSBvYmplY3QvbW9kZWwgdG8ga2V5d29yZCBhcmdzL2hhc2gtbGlr ZSBkYXRhLg0KDQoNCj4gSW1hZ2luZSBzb21ldGhpbmcgbGlrZQ0KPiBgYGBydWJ5DQo+IFZhbGlk T3B0aW9ucyA9IFN0cnVjdC5uZXcoOnNzbCwgOmhvc3QsIDpwb3J0KQ0KPiBgYGANCg0KTm93IGlt YWdpbmUgdGhhdCBpZiB5b3Ugd2FudCB0byBoYXZlIHN1Y2ggb3B0aW9ucyBhcyBrd2FyZy1wYXNz YWJsZSwgeW91IGNhbiBqdXN0DQpgYGBydWJ5DQpWYWxpZE9wdGlvbnMgPSBTdHJ1Y3QubmV3KDpz c2wsIDpob3N0LCA6cG9ydCkgeyBhbGlhcyB0b19oYXNoIHRvX2ggfQ0KYGBgDQouLi5hbmQgdGhh dCBpbW1lZGlhdGVseSBjb21tdW5pY2F0ZXMg4oCcdGhpcyBwYXJ0aWN1bGFyIHZhbHVlIG9iamVj dCAodW5saWtlIG1hbnkgb3RoZXIgdmFsdWUgb2JqZWN0cykgdGhpbmtzIG9mIGl0IGFzIGEgaGFz aC1saWtlIG9iamVjdCB0aGF0IHdvdWxkIGJlIHVucGFja2VkIHByb2JhYmx5IGF0IHNvbWUgcG9p bnTigJ0uDQoNCj4+IHByb2JsZW0gb2YgdGhpbmdzIGJlaW5nIHVuaW50ZW50aW9uYWxseSB1bnBh Y2tlZCwgY29uc2lkZXJpbmcgaG93IG1hbnkgb2JqZWN0cyBoYXZlIHRvX2ggbWV0aG9kDQo+DQo+ IFRoYXQgbmV2ZXIgaGFwcGVucy4gSSBoYXZlIG5ldmVyIGV2ZXIgd3JpdHRlbiBjb2RlIHdoZXJl IGBmb28oKipvcHRzKWAgdGhyb3dzICJubyBpbXBsaWNpdCBjb252ZXJzaW9uIG9mIE9iamVjdCBp bnRvIEhhc2giIGFuZCB0aGVuIEkgcmVhbGl6ZSBJIHJlYWxseSBtZWFudCB0byB1c2Ugc29tZXRo aW5nIG90aGVyIHRoYW4gb3B0cy4NCg0KSSBzYXcgdGhpcyBhIGxvdCAoZXNwZWNpYWxseSB0cmFu c2l0aW9uaW5nIGZyb20gb2xkZXIgdG8gbmV3ZXIgc3ludGF4ZXMsIGxpYnJhcmllcywgYW5kIFJ1 YnkgdmVyc2lvbnMpLiBGaWdodGluZyBhbmVjZGF0YSB3aXRoIGFuZWNkYXRhISA6KQ0KDQpUaGUg Y29udmVyc2lvbiBmcm9tIOKAnGl0IGhhZCBqdXN0IG9uZSBleHRyYSBwYXJhbWV0ZXLigJ0gdG8g 4oCcaXQgaGFzIGEgaGFzaCBvZiBleHRyYSBwYXJhbWV0ZXJz4oCdIGlzIGEgZnJlcXVlbnQgcmVm YWN0b3Jpbmcgd2hlbiBzb21lIGxpYnJhcnkgbWF0dXJlcywgYW5kIEkgcmVhbGx5IGxpa2UgdG8g aGF2ZSBpdCByZXBvcnRlZCB0byBtZSBlYXJseSB0aGF0IHNvbWUgb2JqZWN0IHBhc3NlZCB3aGVy ZSBpdCBkb2VzbuKAmXQgY29ycmVzcG9uZCB0byB0aGUgdGFyZ2V0IG1ldGhvZOKAmXMgZXhwZWN0 YXRpb25zLiBgTm9NZXRob2RFcnJvcmAv4oCcbm8gaW1wbGljaXQgY29udmVyc2lvbuKAnSBpcyBh IHdvbmRlcmZ1bCB0b29sIGZvciB0aGlzLCBidXQgb25seSBpZiBpdCBoYXBwZW5zIF9pbiB0aGUg Y2xvc2VzdCBwbGFjZSB0byB0aGUgcG9zc2libGUgZXJyb3JfLg0KDQpQUzogSG9uZXN0bHksIEkg YW0gc3RpbGwgbm90IHN1cmUgd2hpY2ggX3Byb2JsZW1fIHdlIGFyZSB0cnlpbmcgdG8gc29sdmUg KHRoYXQgaXMgbm90IGNvdmVyZWQgYnkgdGhlIGAqKm5pbGAgYWRkaXRpb24pIHRoYXQgaXMgc28g ZnJlcXVlbnQgYW5kIGhhcyBubyBvdGhlciBlYXN5IHNvbHV0aW9uIHRvIGJlIHdvcnRoIGFsbCB0 aGUgZHJhd2JhY2tzLg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQpGZWF0dXJlICMxNTM4MTogTGV0IGRvdWJsZSBzcGxhdCBjYWxsIGB0b19oYCBpbXBsaWNpdGx5 DQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTUzODEjY2hhbmdlLTExMDIxNw0K DQoqIEF1dGhvcjogc2F3YSAoVHN1eW9zaGkgU2F3YWRhKQ0KKiBTdGF0dXM6IE9wZW4NCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClRoZSBzaW5nbGUgc3BsYXQgY2Fs bHMgYHRvX2FgIGltcGxpY2l0bHkgb24gdGhlIG9iamVjdCAoaWYgaXQgaXMgbm90IGFuIGFycmF5 IGFscmVhZHkpIHNvIHRoYXQsIGZvciBleGFtcGxlLCB3ZSBoYXZlIHRoZSBjb252ZW5pZW5jZSBv ZiB3cml0aW5nIGNvbmRpdGlvbnMgaW4gYW4gYXJyYXkgbGl0ZXJhbDoNCg0KYGBgcnVieQ0KYSA9 IFsNCiAgKig6Zm9vIGlmIHNvbWVfY29uZGl0aW9uKSwNCiAgKig6YmFyIGlmIGFub3RoZXJfY29u ZGl0aW9uKSwNCl0NCmBgYA0KDQpBbmQgdGhlIGFtcGVyc2FuZCBpbXBsaWNpdGx5IGNhbGxzIGB0 b19wcm9jYCBvbiB0aGUgb2JqZWN0IChpZiBpdCBpcyBub3QgYSBwcm9jIGFscmVhZHkpIHNvIHRo YXQgd2UgY2FuIHN1YnN0aXR1dGUgYSBibG9jayB3aXRoIGFuIGFtcGVyc2FuZCBmb2xsb3dlZCBi eSBhIHN5bWJvbDoNCg0KYGBgcnVieQ0Kc29tZV9tZXRob2QoJjpzb21lX21ldGhvZF9uYW1lKQ0K YGBgDQoNClVubGlrZSB0aGUgc2luZ2xlIHNwbGF0IGFuZCBhbXBlcnNhbmQsIHRoZSBkb3VibGUg c3BsYXQgZG9lcyBub3Qgc2VlbSB0byBpbXBsaWNpdGx5IGNhbGwgYSBjb3JyZXNwb25kaW5nIG1l dGhvZC4gSSBwcm9wb3NlIHRoYXQgdGhlIGRvdWJsZSBzcGxhdCBzaG91bGQgY2FsbCBgdG9faGAg aW1wbGljaXRseSBvbiB0aGUgb2JqZWN0IGlmIGl0IG5vdCBhbHJlYWR5IGEgSGFzaCBzbyB0aGF0 IHdlIGNhbiwgZm9yIGV4YW1wbGUsIHdyaXRlIGEgY29uZGl0aW9uIGluIGEgaGFzaCBsaXRlcmFs IGFzIGZvbGxvd3M6DQoNCmBgYHJ1YnkNCmggPSB7DQogICoqKHthOiAxfSBpZiBzb21lX2NvbmRp dGlvbiksDQogICoqKHtiOiAyKSBpZiBhbm90aGVyX2NvbmRpdGlvbiksDQp9DQpgYGANCg0KVGhl cmUgbWF5IGJlIHNvbWUgb3RoZXIgYmVuZWZpdHMgb2YgdGhpcyBmZWF0dXJlIHRoYXQgSSBoYXZl IG5vdCBub3RpY2VkIHlldC4NCg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcv DQogX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogcnVieS1j b3JlIG1haWxpbmcgbGlzdCAtLSBydWJ5LWNvcmVAbWwucnVieS1sYW5nLm9yZwogVG8gdW5zdWJz Y3JpYmUgc2VuZCBhbiBlbWFpbCB0byBydWJ5LWNvcmUtbGVhdmVAbWwucnVieS1sYW5nLm9yZwog cnVieS1jb3JlIGluZm8gLS0gaHR0cHM6Ly9tbC5ydWJ5LWxhbmcub3JnL21haWxtYW4zL2xpc3Rz L3J1YnktY29yZS5tbC5ydWJ5LWxhbmcub3JnLw==