From 151536d44dc3b3f842e84ab03fa62f566e55d067 Mon Sep 17 00:00:00 2001 From: kazu Date: Sat, 17 Sep 2016 01:51:22 +0000 Subject: * doc/extension.ja.rdoc: translate r56130 (rb_check_arity). [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ doc/extension.ja.rdoc | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/ChangeLog b/ChangeLog index 425201df7a..d52e6dcea6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sat Sep 17 10:49:35 2016 Kazuhiro NISHIYAMA + + * doc/extension.ja.rdoc: translate r56130 (rb_check_arity). + Sat Sep 17 02:40:52 2016 Aaron Patterson * ext/objspace/objspace_dump.c: Fix stream processing support for heap diff --git a/doc/extension.ja.rdoc b/doc/extension.ja.rdoc index ab4a91e9f1..464515a23d 100644 --- a/doc/extension.ja.rdoc +++ b/doc/extension.ja.rdoc @@ -938,6 +938,9 @@ fdbm_delete()はこのようになっています. い,第4引数以降に指定したVALUEへの参照に値を代入してくれま す. +引数の数をチェックするだけならrb_check_arity()が使えます. +これは引数をリストとして扱いたいときに便利です. + 引数をRubyの配列として受け取るメソッドの例には Thread#initializeがあります.実装はこうです. @@ -1347,6 +1350,12 @@ rb_define_singleton_method(VALUE klass, const char *name, VALUE (*func)(), int a 特異メソッドを定義する.引数はrb_define_method()と同じ. +rb_check_arity(int argc, int min, int max) :: + + 引数の数であるargcがmin..maxの範囲に入っているかをチェックします. + もしmaxがUNLIMITED_ARGUMENTSなら,上限はチェックしません. + もしargcが範囲外ならArgumentErrorが発生します. + rb_scan_args(int argc, VALUE *argv, const char *fmt, ...) :: argc, argv形式で与えられた指定されたフォーマットに従って引 -- cgit v1.2.3