mruby master changes a85fdbd - d7c2932
mruby master changes a85fdbd - d7c2932
userdataを持ったProcのcfunc(c言語の関数)を定義できるAPIを追加しています。
2014-03-31 00:50 matz commit a85fdbd
JIS/ISOでは、ArrayはComparableではないので、Comparableを削除しています
2014-03-31 08:14 ksss commit 15eabcd
例外が発生したときに、例外のクラス名を表示するようにしています
2014-03-31 09:47 mattn commit ea68fe2
整数リテラルにアンダースコアが追加されているので#1960、String#hex, octにテストコードを増やしています
2014-03-31 09:50 take-cheeze commit bf6b1df
userdataを持ったProcのcfunc(c言語の関数)を定義できるAPIを追加しています。これは1974を解決しています。
どうやらmrubyのProcには、C言語の関数を格納できるようです。Procの構造体は以下のようになっており、unionでirepがあります
struct Proc { MRB_OBJECT_HEADER; union { mirb_irep *irep; mrb_func_t func; } body; struct RClass *target_class; struct REnv *env; };
irepはinternal representation(内部表現)でmrubyがコンパイルされた状態のコードです。つまり、C言語の処理かmrubyの処理が格納できる状態になっているのだと思います。REnvがuserdataなのでしょう。
2014-03-31 13:44 matz commit 4c29699
Hash関数で、出来る限りfuncall関数を避けるようにしています
2014-03-31 14:12 matz commit d7c2932
シングルトンクラスは__outer__
を設定する必要があるので、設定しています。1983を修正しています