From: Patrick Gundlach Date: 2006-02-08T20:43:21+09:00 Subject: c api, getting class Hi, q: How do I throw a custom exception in the c-part of a ruby program? I have a mixed ruby/c class and I'd like to throw an exception that is defined in the ruby side from the c side: myklass.rb class Myclass class UnknownFormat < Exception end end myklass_c.c .... VALUE eUnknownFormatError; eUnknownFormatError=rb_gv_get("Myclass::UnknownFormat"); rb_raise(eUnknownFormatError,"fatal: format not found"); This does not work. I have no idea how to proceed. Some small hints would probably enough to point me in the right direction. I have seen (pickaxe) that I can define the class in the c part with rb_define_class(), but I want to reuse the class that is already defined on the ruby side. Patrick