function rb_define_class_under

VALUE rb_define_class_under(VALUE outer, const char *name, VALUE super)

super のサブクラスとして新しい Ruby クラスを、outer の定数として定義して返します。

[PARAM] outer:
定義するクラスが定数として所属するクラス
[PARAM] name:
クラス名
[PARAM] super:
継承元のクラス。NULL を指定した場合は Object クラス
[EXCEPTION] TypeError:
引数 name と同じ名前の定数が既に存在し、それが Class オブジェクトではない場合に発生します。
[EXCEPTION] TypeError:
定義済みのクラスと継承元のクラスが一致しない場合に発生します。