キーワード
-
RUBY
_ DATA _ FUNC (1) -
blk
_ free (1) -
blk
_ mark (1) -
blk
_ orphan (1) -
bm
_ mark (1) -
call
_ end _ proc (1) -
proc
_ get _ safe _ level (1) -
proc
_ save _ safe _ level (1) -
proc
_ set _ safe _ level (1) -
rb
_ catch (1) -
rb
_ const _ list (1) -
rb
_ data _ object _ alloc (1) -
rb
_ ensure (1) -
rb
_ iterate (1) -
rb
_ mod _ const _ at (1) -
rb
_ mod _ const _ of (1) -
rb
_ protect (1) -
rb
_ rescue (1) -
rb
_ rescue2 (1) -
rb
_ set _ end _ proc (1) -
rb
_ thread _ check (1) -
rb
_ with _ disable _ interrupt (1) -
trace
_ ev (1) -
undef
_ setter (1) -
val
_ marker (1) -
val
_ setter (1)
検索結果
先頭5件
- VALUE rb
_ data _ object _ alloc(VALUE klass , void *datap , RUBY _ DATA _ FUNC dmark , RUBY _ DATA _ FUNC dfree) - MACRO RUBY
_ DATA _ FUNC(func) - VALUE rb
_ ensure(VALUE (*body)() , VALUE data1 , VALUE (*ensure)() , VALUE data2) - VALUE rb
_ rescue(VALUE (*b _ proc)() , VALUE data1 , VALUE (*r _ proc)() , VALUE data2) - VALUE rb
_ rescue2(VALUE (*b _ proc)() , VALUE data1 , VALUE (*r _ proc)() , VALUE data2 , . . . )
-
VALUE rb
_ data _ object _ alloc(VALUE klass , void *datap , RUBY _ DATA _ FUNC dmark , RUBY _ DATA _ FUNC dfree) (19204.0) -
datap をラップするオブジェクトを生成し、返します。 そのクラスは klass となり、datap をマークするときは dmark、解放するときは dfree を使うようになります。
datap をラップするオブジェクトを生成し、返します。
そのクラスは klass となり、datap をマークするときは
dmark、解放するときは dfree を使うようになります。 -
MACRO RUBY
_ DATA _ FUNC(func) (18304.0) -
任意の関数へのポインタ func を struct RData の dmark/dfree の 値として適する型に強制キャストします。
任意の関数へのポインタ func を struct RData の dmark/dfree の
値として適する型に強制キャストします。 -
VALUE rb
_ ensure(VALUE (*body)() , VALUE data1 , VALUE (*ensure)() , VALUE data2) (700.0) -
ensure の C 版です。まず body(data1) を実行し、その途中で 例外や exit が起きたとしても ensure(data2) が確実に 実行されます ( body() が正常終了しても実行されます)。
ensure の C 版です。まず body(data1) を実行し、その途中で
例外や exit が起きたとしても ensure(data2) が確実に
実行されます ( body() が正常終了しても実行されます)。 -
VALUE rb
_ rescue(VALUE (*b _ proc)() , VALUE data1 , VALUE (*r _ proc)() , VALUE data2) (700.0) -
まず b_proc(data1) を実行し、その途中で例外が発生したら r_proc(data2) を実行します。 捕捉する例外は StandardError のサブクラスだけです。
まず b_proc(data1) を実行し、その途中で例外が発生したら r_proc(data2) を実行します。
捕捉する例外は StandardError のサブクラスだけです。 -
VALUE rb
_ rescue2(VALUE (*b _ proc)() , VALUE data1 , VALUE (*r _ proc)() , VALUE data2 , . . . ) (700.0) -
まず b_proc(data1) を実行し、その途中で例外が発生したら r_proc(data2) を実行します。 第五引数以降の可変長引数に捕捉したい例外クラスのリストを指定します。 引数の最後は NULL で終らなければなりません。
まず b_proc(data1) を実行し、その途中で例外が発生したら r_proc(data2) を実行します。
第五引数以降の可変長引数に捕捉したい例外クラスのリストを指定します。
引数の最後は NULL で終らなければなりません。 -
static VALUE trace
_ ev(struct trace _ data *data) (604.0) -
-
static int blk
_ orphan(struct BLOCK *data) (352.0) -
data が作成された SCOPE かまたはその子ではない SCOPE を評価しているとき真。
data が作成された SCOPE かまたはその子ではない
SCOPE を評価しているとき真。 -
static void call
_ end _ proc(VALUE data) (352.0) -
評価器プロセスが終了するとき、 END 文で登録された Proc オブジェクト data を起動します。
評価器プロセスが終了するとき、
END 文で登録された Proc オブジェクト data を起動します。 -
VALUE rb
_ catch(const char *tag , VALUE (*proc)() , VALUE data) (322.0) -
catch と同等の動作を実行します。
catch と同等の動作を実行します。
まず proc に、yield された値と data を渡して実行します。
その途中で tag が throw されたら rb_catch 全体を終了します。
throw が発生した場合はその値を返します。
throw が発生しなかったときは proc の返り値を返します。
static VALUE
foo_yield(VALUE a, VALUE b)
{
return rb_yield(b);
}
static VALUE
foo_catch(VALUE obj)
{
return rb_... -
VALUE rb
_ protect(VALUE (*proc)() , VALUE data , int *state) (322.0) -
初出: 4064
初出: 4064
proc(data) を評価中のあらゆる大域脱出(例外を含む)を捕捉します。
val = rb_protect(func, arg, &status);
if (status != 0) {
puts("大域脱出が起きた");
rb_jump_tag(status);
} -
VALUE rb
_ const _ list(void *data) (304.0) -
-
VALUE rb
_ with _ disable _ interrupt(VALUE (*proc)() , data) (304.0) -
-
static int proc
_ get _ safe _ level(VALUE data) (304.0) -
-
static rb
_ thread _ t rb _ thread _ check(VALUE data) (304.0) -
-
static void blk
_ free(struct BLOCK *data) (304.0) -
-
static void blk
_ mark(struct BLOCK *data) (304.0) -
-
static void bm
_ mark(struct METHOD *data) (304.0) -
-
static void proc
_ save _ safe _ level(VALUE data) (304.0) -
-
static void proc
_ set _ safe _ level(VALUE data) (304.0) -
-
static void undef
_ setter(VALUE val , ID id , void *data , struct global _ variable *var) (304.0) -
-
static void val
_ marker(VALUE data) (304.0) -
-
static void val
_ setter(VALUE val , ID id , void *data , struct global _ variable *var) (304.0) -
-
void * rb
_ mod _ const _ at(VALUE mod , void *data) (304.0) -
-
void * rb
_ mod _ const _ of(VALUE mod , void *data) (304.0) -
-
void rb
_ set _ end _ proc(void (*func)(VALUE) , VALUE data) (304.0) -
-
VALUE rb
_ iterate(VALUE (*call _ proc)() , VALUE date1 , VALUE (*block _ proc)() , date2) (58.0) -
ブロック付きメソッド(イテレータ)呼び出しを行う関数です.
ブロック付きメソッド(イテレータ)呼び出しを行う関数です.
まず call_proc(data1) を実行します。そしてその関数か
その直下のメソッドで yield が発生すると以下が実行されます。
block_proc(VALUE block_arg, VALUE data2, VALUE self)
block_arg はブロック引数(複数なら配列に入っている)、
data2 は rb_iterate() に渡したもの、
self は block_proc 呼び出し時点での self です。