From ruby-ext-admin@netlab.co.jp Fri Jun 30 05:18:01 2000 Received: from voscc.nagaokaut.ac.jp (voscc.nagaokaut.ac.jp [133.44.1.100]) by blade.nagaokaut.ac.jp (8.8.8/8.8.8/Debian/GNU) with ESMTP id FAA04268; Fri, 30 Jun 2000 05:18:00 +0900 Received: from hoyogw.netlab.co.jp (postfix@hoyogw.netlab.co.jp [210.251.121.20]) by voscc.nagaokaut.ac.jp (8.9.3/3.7W) id FAA31580; Fri, 30 Jun 2000 05:13:55 +0900 (JST) Received: from hoyogw.netlab.co.jp (localhost [127.0.0.1]) by hoyogw.netlab.co.jp (Postfix) with ESMTP id 03CAC46CF0; Fri, 30 Jun 2000 05:13:52 +0900 (JST) Delivered-To: ruby-ext@netlab.co.jp Date: Fri, 30 Jun 2000 05:23:48 +0900 From: Minero Aoki Reply-To: ruby-ext@netlab.co.jp Subject: [ruby-ext:01137] Re: =?ISO-2022-JP?B?GyRCM0hEJSViJTglZSE8JWtGYiRHJE4lJBsoQg==?= =?ISO-2022-JP?B?GyRCJXMlOSU/JXMlOUA4QC4bKEI=?= To: ruby-ext@netlab.co.jp (ruby-ext ML) Message-Id: <20000630052348J.aamine@mail.u-netsurf.ne.jp> In-Reply-To: Your message of "Fri, 30 Jun 2000 04:44:23 +0900 (JST)" <200006291944.EAA18206@taka.suenaga.cse.nagoya-u.ac.jp> References: <200006291944.EAA18206@taka.suenaga.cse.nagoya-u.ac.jp> X-ML-Name: ruby-ext X-Mail-Count: 01137 X-MLServer: fml [fml 3.0pl#17]; post only (only members can post) X-ML-Info: If you have a question, send e-mail with the body "help" (without quotes) to the address ruby-ext-ctl@netlab.co.jp; help= X-Mailer: Mew version 1.93 on Emacs 19.34 / Mule 2.3 (SUETSUMUHANA) X-Dispatcher: imput version 980905(IM100) Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit Precedence: bulk Lines: 25 Sender: ruby-ext-admin@netlab.co.jp あおきです。 In mail "[ruby-ext:01136] 拡張モジュール内でのインスタンス生成" Daisuke Furukawa wrote: > 古川です。 > Ruby 側であるクラスを定義した時、そのインスタンスを C の > 拡張モジュール内で生成するにはどうすればいいのでしょうか。 引数を渡さなくていいなら rb_eval_string が使えます。 rb_eval_string("ClassName.new"); 引数を渡したいなら、 klass = rb_eval_string("ClassName"); rb_funcall(klass, rb_intern("new"), arg_num, arg, arg, arg...); でいけます。 C で直接生成することもできますけど、あんまりやらないほうがよいです。 (使いにくい == たぶんやってほしくないのだろう、ということで) ------------------------------------------------------------------- あおきみねろう