From: "trans (Thomas Sawyer)" <transfire@...> Date: 2013-02-06T05:40:28+09:00 Subject: [ruby-core:51885] [ruby-trunk - Bug #7782] Struct both has and does not have an allocator Issue #7782 has been updated by trans (Thomas Sawyer). Ah, `else`. I've never used that, and forgotten about it. So I should be able to write instead: begin object = type.allocate rescue TypeError ... else ... end Reads kind of funny. But okay. I will try that. Thanks. ---------------------------------------- Bug #7782: Struct both has and does not have an allocator https://bugs.ruby-lang.org/issues/7782#change-35871 Author: trans (Thomas Sawyer) Status: Closed Priority: Normal Assignee: Category: core Target version: 1.9.3 ruby -v: ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-linux] =begin One the one hand: >> Struct.allocate TypeError: allocator undefined for Struct from (irb):1:in `allocate' from (irb):1 from /opt/Ruby/1.9.3-p327/bin/irb:12:in `<main>' But on the other: >> Struct.method(:allocate) => #<Method: Class#allocate> In my current case, I need a reliable way to check if a class can be allocated or not. How can one do this if the method is remains present even when it can not be used? =end -- http://bugs.ruby-lang.org/