Ruby 2.1.0 リファレンスマニュアル > 関数一覧

関数一覧

add_final
add_heap

Rubyオブジェクトのヒープスロットを増設する。

ALLOC

type 型のメモリを割り当てる。

ALLOCA_N

type 型のメモリを n 個スタックフレームに割り当てる。 このメモリは関数が終わると自動的に解放される。

ALLOC_N

type 型のメモリを n 個割り当てる。

arg_add
arg_ambiguous

メソッド引数の括弧が省略され、最初の引数の一文字目が 演算子とも解釈できる場合に警告を出します。

arg_blk_pass
arg_concat
arg_defined
arg_prepend
aryset
assign

左辺を表す構文木 lhs に対し、右辺の値 val を代入します。 Proc オブジェクトを起動する場合は pcall を非ゼロとします。

assignable
assign_in_cond

条件式中の代入に警告を出します。

attrset
autoload_i
avalue_to_svalue
avalue_to_yvalue
backtrace
bind_clone
blk_copy_prev
blk_free
blk_mark
blk_orphan

data が作成された SCOPE かまたはその子ではない SCOPE を評価しているとき真。

block_append

head と tail を NODE_BLOCK のリストとして連結し、 先頭ノードを返します。head または tail が NODE_BLOCK でない場合は NODE_BLOCK に入れたうえでそれを連結します。 head もしくは tail が NULL なら連結はせず、 NULL でないほうを返します。

block_pass

node を評価して Proc オブジェクトを得、それを積みます。

bmcall
bm_mark
boot_defclass

(まだ) メタクラスを持たないクラスを作成します。 三つのメタオブジェクト Object, Module, Class を 作成するのに使います。

BUILTIN_TYPE

obj の構造体型 ID を返します。 SPECIAL_CONST_P(obj) が真のオブジェクトに対して使うと落ちます。

call_cfunc

C で定義されたメソッドの起動に際し、実体の関数 func を呼び出します。

call_end_proc

評価器プロセスが終了するとき、 END 文で登録された Proc オブジェクト data を起動します。

call_final
call_op
call_trace_func

評価器の動作をフックする手続き trace_func を評価します。

catch_i
catch_timer
Check_SafeStr

古い API です。SafeStringValue を使ってください。

Check_Type

val の構造体型フラグが typeflag でなければ 例外 TypeError を発生します。val は即値の VALUE であっても 構いません。

CHR2FIX

char 型の整数 x を Ruby の Fixnum に変換します。

classname
CLASS_OF

obj のクラスを返します。 この場合の「クラス」とは C レベルのクラス、 つまり RBasic 構造体の klass メンバの値です。 また、構造体を持たない Fixnum などに対しても正常に働きます。

CLONESETUP

OBJSETUP() の変種。 clone を、obj から clone で作った オブジェクトとして初期化します。

clone_method

m_tbl 格納形式のメソッド (構文木) をコピーして返します。 ST_CONTINUE を返します。

compile

Ruby の文字列または IO オブジェクト src を 構文木にコンパイルし、返します。そのとき、src が ファイル file の line 行目から始まっていると仮定します。

compile_error
cond
cond0
convert_type
copy_fds

fd_set src を dst にコピーします。 max は select(2) の第一引数と同じ意味です。

copy_node_scope

node の先頭についているはずの、 ローカル変数スコープを積むための情報を格納したノード NODE_SCOPE を コピーして返します。そのとき nd_rval に rval を格納します。

cvar_cbase

現在のコンテキストで、クラス変数の探索の起点となるモジュールを返します。

cvar_override_check
cv_i
Data_Get_Struct

Ruby のオブジェクト obj から type 型へのポインタを とりだし svar に代入します。

Data_Make_Struct

type 型の構造体をヒープに割り当ててそれへのポインタを svar に代入し、クラス klass のインスタンスである Ruby のオブジェクトを生成し、それを返します。mark free はそれぞれマーク用・解放用の関数へのポインタです。 どちらも、必要ないときはかわりに 0 を渡します。

DATA_PTR

実際は struct RData* 型である dta から、 それがラップしているポインタを取り出します。

Data_Wrap_Struct

C の構造体 sval をラップして klass クラスの インスタンスである Ruby オブジェクトを生成し、それを返します。 mark、free はそれぞれ sval のマーク用・解放用の 関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。

define_final
delete_never

st_cleanup_safe() のイテレータブロック。

DUPSETUP

OBJSETUP() の変種。 dup を、obj から dup で作った オブジェクトとして初期化します。

dvar_asgn

現在のローカル変数スコープ中に存在するはずの ブロックローカル変数 id に value を代入します。

dvar_asgn_curr

現在のブロックローカル変数スコープに存在するはずの ブロックローカル変数 id に value を代入します。

dvar_asgn_internal

dvar_asgn と dvar_asgn_curr の補助関数です。

dyna_in_block

ブロックにネストしているコードをパース中は真。

dyna_pop

ブロックローカル変数テーブルをポップします。

dyna_push

ブロックローカル変数テーブルをプッシュします。

errat_getter
errat_setter
errinfo_setter
error_handle
error_pos
error_print
eval

eval の実体。文字列 src を評価します。 そのとき第三引数 scope が nil でなければ そのコンテキストの元で評価します。

eval_node
eval_under
eval_under_i
ev_const_defined

外のクラスが cref で self が self のとき、 定数 id が定義されていたら真。

ev_const_get

外のクラスが cref で self が self として 定数 id を参照します。

exec_under
e_option_supplied

ruby -e で与えたプログラムを実行中なら真。

fc_i
fc_path
finals
find_bad_fds
find_class_path

クラス klass のクラスパスを探索し、Ruby の文字列で返します。

FIX2INT

Fixnum を int に変換します。 返り値が int の範囲から外れる場合は RangeError が発生します。

FIX2LONG

Fixnum を long に変換します。 Fixnum は常に long に収まります。

FIX2UINT

Fixnum を unsigned int に変換します。 返り値が unsigned int の範囲から外れる場合は RangeError が発生します。

FIX2ULONG

Fixnum を unsigned long に変換します。 Fixnum は常に unsigned long に収まります。

FIXABLE

f が Fixnum の範囲に収まっているなら真。

FIXNUM_MAX

Fixnum にできる整数の上限値。

FIXNUM_MIN

Fixnum にできる整数の下限値。

FIXNUM_P

obj が Fixnum のインスタンスのとき真。

fixpos

orig に格納されているファイル名と行番号を node にコピーします。 node もしくは orig が NULL のときは何もしません。

FL_ABLE

x が即値の VALUE でなければ真。

FL_REVERSE

x のフラグ f を反転する。

FL_SET

x に対してフラグ f をセットする。

FL_TEST

x のフラグ f が立っていたら真。

FL_UNSET

x のフラグ f をクリアする。

frame_dup

frame とその親 FRAME 全てをスタックからヒープに割り当てなおします。

gc_mark_all
gc_mark_rest
gc_sweep

GC のスイープフェイズを実行します。

generic_ivar_defined
generic_ivar_get
generic_ivar_remove
generic_ivar_set
gettable

id が変数・定数として有効ならば、それを参照するノードを返します。 (get + able であって get table ではない)

get_backtrace
givar_i
givar_mark_i
global_id
gvar_i
handle_rescue
heredoc_identifier

ヒアドキュメントの「<<」を既に読みこんだものと仮定して 開始記号を読みこみ、lex_strterm をセットします。 返り値は、読み込みに成功したときはシンボル、解析できないときは 0 です。

heredoc_restore

ヒアドキュメントの本体の読み込みに失敗したとき、開始記号 のある行を復帰します。here は lex_strterm です。

here_document

lex_strterm 形式の term に従ってヒアドキュメントを 終端行まで読み込む。

id2ref

ObjectSpace#_id2ref の実体。 Ruby の整数で表されたオブジェクト ID id から オブジェクトを返します。

ID2SYM

id を Symbol に変換します。

IMMEDIATE_P

obj が即値でかつ真な値であるとき真。 すなわち現在の実装では obj が Symbol か Fixnum のインスタンスであるか、 Qtrue のとき真。

include_class_new

super をスーパークラスとして モジュールの「化身」クラスを作成し返します。

Init_eval
Init_heap
Init_load
init_mark_stack
Init_Proc
Init_stack
Init_sym

シンボル関係の変数を初期化します。

Init_Thread
Init_var_tables
inspect_i
inspect_obj
ins_methods_i

rb_class_instance_methods() のイテレータブロック (通常版)。

ins_methods_priv_i

rb_class_instance_methods() のイテレータブロック (private メソッド版)。

ins_methods_prot_i

rb_class_instance_methods() のイテレータブロック (protected メソッド版)。

INT2FIX

Fixnum におさまることが自明な整数を Fixnum に変換します。 なお、Fixnum の幅は long の幅 - 1 です。

INT2NUM

任意の整数を Fixnum か Bignum に変換します。

internal_id

インタプリタ内部でだけ使う、 他のものとは重複しない ID を返します。

intersect_fds
ISALNUM
ISALPHA
ISASCII
ISDIGIT

cが'0'から'9'のとき真。それ以外は偽。

ISLOWER
ISPRINT
ISSPACE
ISUPPER
ISXDIGIT

cが’0’から’9’、’a’から’f’、’A’から’F’のとき真。それ以外は偽。

is_defined

node を self = self で評価したとき値が得られそうな 式であれば、node の種別を表す文字列を返します。

is_pointer_to_heap
ivar_i
jump_tag_but_local_jump
lex_getline

関数 lex_gets を使って lex_input から Ruby プログラムを一行読みこみます。

lex_get_str

文字列 s の lex_gets_ptr の後から一行取得し、返します。 lex_gets_ptr も進められます。

list_append

NODE_LIST のリスト head に非 NODE_LIST のノード tail を連結し、先頭ノードを返します。head が NULL のときは tail を NODE_LIST でラップして返します。

list_concat

NODE_LISTのリストheadにNODE_LISTのノードtailを連結し、 先頭ノードを返す。head、tailともにNULLであってはならない。

list_i
literal_append
literal_concat
literal_concat_dstr
literal_concat_list
literal_concat_string
LL2NUM
localjump_error
localjump_exitstatus
local_append

新しいローカル変数 id をテーブルに追加します。

local_cnt

ローカル変数 id の変数 ID を取得します。 定義されていてもいなくても正しい ID が取得できます。

local_id

現在のスコープでローカル変数 id が定義されていれば真。

local_pop

ローカル変数テーブルをポップします。 テーブルが参照されていない場合、 テーブルは自動的に開放されます。

local_push

ローカル変数テーブルをプッシュします。 プログラムのトップレベルをパースしているときは top を真にします。

local_tbl

ローカル変数テーブルスタックの先頭にあるテーブルを取得します。

logop
LONG2FIX

INT2FIX と同じです。

LONG2NUM
make_backtrace
mark_entry
mark_global_entry
mark_hashentry
mark_locations_array
mark_source_filename
massign
match_fds
match_gen
MEMCMP

type 型のメモリ領域 p1 と p2 の先頭 n 個を比較する。 p1 が p2 の最初の n 個より小さい、等しい、大きいとき、そ れぞれ正、0、負の値を返す。

MEMCPY

type 型のメモリ領域 p2 のうち先頭の n 個を p1 にコピーする。

MEMMOVE

type 型のメモリ領域 p2 のうち先頭の n 個を p1 に移動する。

MEMZERO

type 型のメモリ領域 p をゼロクリアする。 n は要素数。

method_arity
method_call
method_clone
method_eq
method_inspect
method_list

モジュール mod に定義されているメソッドに対して 順番に func を繰り返し呼び出します。

method_proc
method_unbind
mnew
module_setup

module を定義するモジュール文の本体 n を評価します。

mod_av_set
mproc
mvalue_to_svalue
NEGFIXABLE

f が Fixnum の下限値以上ならば真。

newline_node

nodeがNULLでなければ現在パース中の行番号を格納した NODE_NEWLINEをnodeの前に付加し、それを返す。

NEWOBJ
newtok

トークンバッファを初期化またはクリアし、 次のトークンを開始する。

new_blktag
new_call
new_dvar
new_fcall
new_size

必要なサイズ size から、最適なハッシュエントリの サイズを返す。

new_super
nextc

入力から次の一文字を読み込みます。 CR LF に対して LF を、EOF に対して -1 を返します。

NIL_P

obj が Qnil のとき真。

nodeline

node に埋め込まれている行番号を返します。 デバッグ用です。

nodetype

node の種類を返します。 デバッグ用です。

node_assign
NUM2CHR
NUM2DBL
NUM2INT

x を int 型の整数に変換します。

NUM2LONG

x を long 型の整数に変換します。

NUM2SHORT

x を short 型の整数に変換します。

NUM2UINT

x を unsigned int 型の整数に変換します。

NUM2ULONG

x を unsigned long 型の整数に変換します。

NUM2USHORT

x を unsigned short 型の整数に変換します。

numcmp

int用の比較関数。

numhash

int用のハッシュ関数。 n に対するハッシュ値を計算する。

OBJSETUP

obj をクラス klass とフラグ typeflag で初期化する。 $SAFE >= 3 のときは無条件で汚染する。

obj_free
OBJ_FREEZE
OBJ_FROZEN
OBJ_INFECT

src に汚染マークが付いていたら dest も汚染する。

OBJ_TAINT

x に汚染マークを付ける。

OBJ_TAINTED

x に汚染マークが付いていたら真。

original_module
os_each_obj
os_live_obj
os_obj_of
parse_string

lex_strterm 形式のノード quote の指示に従い、 文字列の終端または埋め込み式の始まりまで読みこみます。

peek

現在読み込み中のプログラムの次の文字が c ならば真。

pipe_open

popen(3) を実行します。引数pname、modeは popen(3) の 引数に対応します。

POSFIXABLE

f が Fixnum の上限値以下ならば真。

print_undef

クラス klass にメソッド id が見付からない (undefined) ことに 対するエラーメッセージを stderr に出力します。

proc_arity
proc_binding
proc_call
proc_eq
proc_get_safe_level
proc_invoke

Proc オブジェクト proc を起動します。そのとき 引数を args とし、self を self にします。

proc_new

評価器のその時点でのスナップショットを保存する Proc オブジェクトを生成します。クラスを klass にします。

proc_save_safe_level
proc_set_safe_level
proc_s_new

Proc.new の実体。

proc_to_proc
proc_to_s
proc_yield

Proc.yield の実体。

pushback

入力に一文字戻します。 c が EOF (-1) のときはなにもしません。

range_op
RARRAY

obj を struct RArray* にキャストする。 本当は obj が struct RArray* でないとしてもキャストしてしまう。

RBASIC
RBIGNUM
rb_add_method

クラス klass に mid という名前のメソッドを定義する。 その本体は node であり、noex で示される可視性を持つ。

rb_alias

クラス klass に定義されたメソッド name の 本体を実体とする新しいメソッド def を定義します。

rb_alias_variable
rb_any_to_s

Object#to_s の実体です。

rb_apply

オブジェクト recv のメソッド mid を 引数 args とともに呼び出します。

rb_Array

obj が Array でない場合は to_a を使って Array に変換します。

rb_ary_aref

argc が 1 のときは ary[*argv]、 2 のときは ary[argv[0], argv[1]] を返します。

rb_ary_clear

ary.clear

rb_ary_concat

ary.concat x

rb_ary_delete

ary.delete

rb_ary_entry

ary のインデックス offset の要素を返します。

rb_ary_includes

ary.include? item

rb_ary_new

空の Ruby の配列を作成し返します。

rb_ary_new2

長さ len 分だけメモリを確保した、 長さゼロの Ruby の配列を作成し返します。

rb_ary_new3

長さ n で要素に i0 i1 i2 …を格納した Ruby の配列を作成し返します。

rb_ary_pop

配列 ary の末尾の要素をとりのぞき返します。 空配列のときは Qnil を返します。

rb_ary_push

配列 ary の末尾に item を追加します。

rb_ary_shift

配列 ary の先頭の要素を取り除き返します。 空配列のときは Qnil を返します。

rb_ary_sort

ary.sort

rb_ary_store

配列 ary のインデックス idx に val を格納します。idx が範囲を越えるときは Ruby レベルと同じく自動的にサイズが拡張されます。

rb_ary_to_s

ary.to_s

rb_ary_unshift

配列 ary の先頭に item を挿入します。

rb_assoc_new

[a,b] を返します。

rb_attr
rb_autoload

この関数は 2.3.0 以降で deprecated です。rb_funcall を使用してください。

rb_autoload_defined
rb_autoload_id
rb_autoload_load
rb_backref_error
rb_backref_get

現在の SCOPE の $~ の値を返します。

rb_backref_set

現在の SCOPE の $~ に val を代入します。

rb_backtrace
rb_big2str0

この関数は deprecated です。内部関数になりました。

rb_big2ulong_pack

この関数は deprecated です。rb_integer_pack を使用してください。

rb_block_given_p

メソッドがブロック付きで呼ばれていれば true を返します。

rb_call

クラス klass に定義されたメソッド mid を呼び出します。 レシーバは recv で、引数は長さ argc の配列 argv で渡します。

rb_call0

クラス klass に定義されたメソッドのコード body を起動します。 レシーバは recv で、引数は長さ argc の配列 argv で渡します。 nosuper が非ゼロのときは、この呼び出し中の super がエラーになります。

rb_callcc

Continuation オブジェクトを生成します。

rb_call_super

Rubyレベルでの super です。 現在評価中のメソッドのスーパークラスのメソッドを呼び出します。

rb_catch

catch と同等の動作を実行します。

rb_check_convert_type

val.method を実行してクラス tname のインスタンスを返します。 val がメソッド method を持たなければ nil を返します。

rb_check_safe_str

マクロ Check_SafeStr の本体です。

rb_class2name

klass の名前を返します。 返り値の内容を変更したり free してはいけません。

rb_class_allocate_instance

Class#allocate の実体です。

rb_class_boot

スーパークラスを super とするクラスオブジェクトを作成し、返します。

rb_class_inherited

クラス super の下位クラス klass が作成されたことを 受けて、super に対し inherited メソッドを呼び出します。

rb_class_initialize

Class#initialize の実体です。

rb_class_instance_methods

Module#instance_methods の実体。 モジュール mod に定義されている public メソッド名の リストを文字列の配列で返します。

rb_class_new

super をスーパークラスとして 新しいクラスオブジェクトを生成し、返します。

rb_class_new_instance

Class#new の実体です。

rb_class_path

klass の名前を返します.klassが無名クラス、無名モジュー ルの場合 #<Class 0xXXXX>, #<Module 0xXXXX> の形式で返します。

rb_class_private_instance_methods

Module#private_instance_methods の実体。 モジュール mod に定義されている private メソッド名の リストを文字列の配列で返します。

rb_class_protected_instance_methods

Module#protected_instance_methods の実体。 モジュール mod に定義されている protected メソッド名の リストを文字列の配列で返します。

rb_class_real

特異クラスや化身クラス (T_ICLASS) を飛ばして cl の スーパークラスを辿り、Ruby レベルに露出してもよいクラスを返します。

rb_class_superclass
rb_class_s_new
rb_clear_cache

メソッドキャッシュをすべて消去します。

rb_clear_cache_by_class

メソッドキャシュから klass クラスのメソッドの キャッシュエントリを消去します。

rb_clear_cache_by_id

メソッドキャシュから id という名前のメソッドの キャッシュエントリを全て消去します。

rb_compile_bug

この関数は 2.3.0 以降で deprecated です。公開関数ですが内部利用のみを想 定しています。外部のライブラリで使用すべきではありません。

rb_compile_cstr

C の文字列 s を構文木にコンパイルし、ruby_eval_tree と ruby_eval_tree_begin に格納します。ruby_eval_tree を返します。 またコンパイルするときにファイル f の line 行目からをコンパイル していると仮定します。

rb_compile_error

この関数は 2.3.0 以降で deprecated です。公開関数ですが内部利用のみを想 定しています。外部のライブラリで使用すべきではありません。

rb_compile_error_with_enc

この関数は 2.3.0 以降で deprecated です。公開関数ですが内部利用のみを想 定しています。外部のライブラリで使用すべきではありません。

rb_compile_file

Ruby の IO オブジェクト file から文字列を読み込み、 それを Ruby プログラムとして構文木にコンパイルします。 作成した構文木は ruby_eval_tree と ruby_eval_tree_begin に 格納し、同時に ruby_eval_tree を返します。 またコンパイルするときにファイル f の line 行目からをコンパイル していると仮定します。

rb_compile_string

Ruby の文字列 s を構文木にコンパイルし、ruby_eval_tree と ruby_eval_tree_begin に格納します。ruby_eval_tree を返します。 またコンパイルするときにファイル f の line 行目からをコンパイル していると仮定します。

rb_const_assign
rb_const_defined

klass とそのスーパークラスに定数 id が定義されていれば真。

rb_const_defined_at

klass 自体に定数 id が定義されていれば真。

rb_const_get

定数 klass::name の値を取得します。

rb_const_get_at

クラス klass で定義された定数 name の値を取得します (祖先や外のクラスは調べない)。

rb_const_list
rb_const_set

定数 klass::name の値を val として定義します。

rb_cont_call

Continuation#call の実体。

rb_convert_type

オブジェクト val をクラス type のインスタンスに変換します。 変換には、val.method の戻り値が使われます。

rb_copy_generic_ivar
rb_cstr_to_dbl
rb_cvar_declear

klass のクラス変数 name に val を代入します。

rb_cvar_defined
rb_cvar_get

klass のクラス変数 name の値を 取得します。

rb_cvar_set

klass のクラス変数 name に val を代入します。 変数がまだ定義されていない場合は NameError を発生します。

rb_cv_get

klass のクラス変数 name の値を 取得します。

rb_cv_set

klass のクラス変数 name に val を代入します。 変数がまだ定義されていない場合は NameError を発生します。

rb_data_object_alloc

datap をラップするオブジェクトを生成し、返します。 そのクラスは klass となり、datap をマークするときは dmark、解放するときは dfree を使うようになります。

rb_define_alias

クラス klass のインスタンスメソッド old の 別名 new を定義します。

rb_define_attr

クラス klass にメソッド name と name= を定義します。 read が真のときは name を定義し、 write が真のときは name= を定義します。

rb_define_class

クラス super の下位クラス name を作成し返します。

rb_define_class_id

クラス名 id でクラス super を継承したクラスを 新しく作成する。クラス→クラス名 (定数名) の関連付けは なされるが、定数→クラスの関連付けはなされない。

rb_define_class_under

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

rb_define_class_variable

クラス klass のクラス変数 name を初期値 val で 定義します。既に同名の変数が定義されていたら警告します。

rb_define_const

クラス klass の定数 name を初期値 val で 定義します。既に同名の定数が定義されていたら警告します。

rb_define_global_const

トップレベル (現在は Object) の定数 name を初期値 val で 定義します。既に同名の定数が定義されていたら警告します。

rb_define_global_function

関数 name を定義します。 func と argc は rb_define_method と同じです。

rb_define_hooked_variable
rb_define_method

クラスklassのインスタンスメソッドnameを定義します。

rb_define_method_id

klass に public メソッド name を定義します。 その実体は関数 func です。また argc の意味は rb_define_method と同じです。

rb_define_module

モジュール name を作成し返します。

rb_define_module_function

モジュール module にモジュール関数 name を定義します。 func と argc は rb_define_method と同じです。

rb_define_module_id

名前が id である新しいモジュールを定義し、それを返します。 モジュール→名前 (定数) のリンクは確立しますが 名前→モジュールのリンクはまだ確立していません。

rb_define_module_under

モジュール outer::name を作成し返します。

rb_define_private_method

クラス klass にプライベートインスタンスメソッド name を 定義します。その実体は関数 func であり、その関数がとる 引数のタイプを argc で指定します。argc のフォーマットに ついては rb_define_method の項を参照してください。

rb_define_protected_method

クラス klass に protected インスタンスメソッド name を 定義します。その実体は関数 func であり、その関数がとる 引数のタイプを argc で指定します。argc のフォーマットに ついては rb_define_method の項を参照してください。

rb_define_readonly_variable
rb_define_singleton_method

obj に特異メソッド name を定義します。 メソッドの実体を func に関数ポインタで与え、その関数がとる 引数のタイプを argc に渡します。argc のフォーマットに ついては rb_define_method の記述を参照してください。

rb_define_variable
rb_define_virtual_variable
rb_disable_super

クラス klass のメソッド name からの super を禁止します。 klass とそのスーパークラスで name というメソッドが定義 されていないときは例外 NameError を発生します。

rb_dvar_curr

現在のブロックローカル変数スコープで id を参照します。

rb_dvar_defined
rb_dvar_push
rb_dvar_ref

現在のローカル変数スコープで id を参照します。

rb_enable_super

クラス klass のメソッド name からの super を許可します。 klass とそのスーパークラスで name というメソッドが定義 されていないときは例外 NameError を発生します。

rb_ensure

ensure の C 版です。まず body(data1) を実行し、その途中で 例外や exit が起きたとしても ensure(data2) が確実に 実行されます ( body() が正常終了しても実行されます)。

rb_eql

obj1.equal?(obj2) ならば Qtrue、 そうでないならば Qfalse。

rb_equal

obj1 == obj2 ならば Qtrue、 そうでないならば Qfalse。

rb_eval

構文木 n を self = self のもとで評価します。

rb_eval_cmd
rb_eval_string

str を Ruby プログラムとしてコンパイル・評価し、 その値を返します。

rb_eval_string_protect

str を Ruby プログラムとしてコンパイル・評価し、 その値を返します。

rb_eval_string_wrap

rb_eval_string_protect と同じですが,スクリプトの評価を 無名のモジュールのもとで行います。

rb_exc_fatal

例外オブジェクト err を fatal として投げます。

rb_exc_raise

例外オブジェクト err を投げます。

rb_exec

この関数は deprecated です。

rb_exec_arg_addopt

この関数は deprecated です。

rb_exec_arg_fixup

この関数は deprecated です。

rb_exec_arg_init

この関数は deprecated です。

rb_exec_end_proc

END ブロックおよび Kernel#at_exit で登録した Proc オブジェクトを 実行します。

rb_exec_err

この関数は deprecated です。

rb_exit

ステータス status でインタプリタを終了させます。

rb_export_method
rb_extend_object
rb_false

Object#nil? の実体です。

rb_fatal

あらゆる例外処理をスキップして即座にインタプリタが終了します。 fmt とその後の引数は printf と同じ形式でエラーメッセージを表現します。

rb_feature_p
rb_fix_new
rb_Float
rb_fork

この関数は deprecated です。

rb_fork_err

この関数は deprecated です。

rb_frame_last_func

現在呼び出し中の (Rubyで実装された) メソッドの呼び出し名を返します。

rb_free_generic_ivar
rb_frozen_class_p
rb_funcall

recv に対してメソッド name を呼びだし、 メソッドの返り値を返します。プライベートメソッドも 呼びだせます。

rb_funcall2

recv に対してメソッド name を呼びだし、 メソッドの返り値を返します。プライベートメソッドも 呼びだせます。

rb_funcall3

recv に対してメソッド name を呼びだし、 メソッドの返り値を返します。

rb_f_abort
rb_f_array

Kernel.#Array の実体です。

rb_f_at_exit
rb_f_autoload
rb_f_binding
rb_f_block_given_p

block_given? の実体。 現在評価中の (Ruby で実装された) メソッドに対して ブロックが与えられていたら真。

rb_f_caller
rb_f_catch
rb_f_END
rb_f_eval
rb_f_exit
rb_f_float

Kernel.#Float の実体です。

rb_f_global_variables
rb_f_hash

Kernel.#Hash の実体です。

rb_f_integer

Kernel.#Integer の実体です。

rb_f_lambda

ruby_block 先端の BLOCK から Proc オブジェクトを作成し、返します。

rb_f_load

load の実体。

rb_f_local_variables
rb_f_loop

loop の実体。永遠に yield を繰り返します。

rb_f_missing
rb_f_raise
rb_f_require

require の実体。 self == obj として fname を require します。

rb_f_send
rb_f_string

Kernel.#String の実体です。

rb_f_throw
rb_f_trace_var
rb_f_untrace_var
rb_gc

明示的に GC を開始します。rb_gc_disable() で禁止中のときおよび すでに GC が実行中のときは実際には行われません。

rb_gc_call_finalizer_at_exit
rb_gc_disable

GC を禁止します。

rb_gc_enable

GC を許可します。

rb_gc_force_recycle

p を強制的に GC します。

rb_gc_mark

v をマークします。

rb_gc_mark_children

v から指されているオブジェクトを全てマークします。

rb_gc_mark_frame

frame をマークします。

rb_gc_mark_global_tbl
rb_gc_mark_locations
rb_gc_mark_maybe

v が Ruby のオブジェクトであればマークします。

rb_gc_mark_threads

存在するスレッド全てをマークします。

rb_gc_register_address
rb_gc_start

GC を起動します。

rb_gc_unregister_address
rb_generic_ivar_table
rb_get_method_body

クラス klass から id という名前のメソッドエントリを検索する。 見付かったらその本体である構文木を返す。見付からなければ NULL を返す。

rb_global_entry
rb_global_variable

rb_gc_register_address と同じです。

rb_gvar_defined

entry で示されるグローバル変数が定義されているなら真。

rb_gvar_get

グローバル変数のエントリ entry から値を取得します。

rb_gvar_set

グローバル変数のエントリ entry に値を代入します。

rb_gv_get

Ruby のグローバル変数の値を取得します。

rb_gv_set

Ruby のグローバル変数 name に val を代入します。 val を返します。

rb_id2name

id に対応する文字列を返します。 返り値は開放できません。

rb_id_attrset
rb_include_module

Module#append_features の実体。 クラスまたはモジュール klass にモジュール module を インクルードします。

rb_inspect

obj.inspect の実体。

rb_Integer

obj が Ruby の整数でない場合は to_i を使って Integer に変換します。

rb_intern

任意の char* と一対一に対応する整数 ID を返す。

rb_interrupt
rb_int_new
rb_io_mode_flags

この関数は deprecated です。rb_io_modestr_fmode を使用してください。

rb_io_mode_flags2

open(2) のようなモード指定modeをruby内部のモードフラグに変換します。

rb_is_class_id

クラス変数名として有効な ID ならば真。

rb_is_const_id

定数名として有効な ID ならば真。

rb_is_instance_id

インスタンス変数名として有効な ID ならば真。

rb_is_local_id

ローカル変数名として有効な ID ならば真。

rb_iterate

ブロック付きメソッド(イテレータ)呼び出しを行う関数です.

rb_iterator_p

この関数はobsoleteです。rb_block_given_p を使用してください。

rb_iter_break

break の C 用インターフェイスです。 現在評価中のブロックから抜けます。

rb_ivar_defined

オブジェクト obj のインスタンス変数 name が 定義されていれば真。

rb_ivar_get

オブジェクト obj のインスタンス変数 name の値を 取得します。

rb_ivar_set

オブジェクト obj のインスタンス変数 name に val を代入します。

rb_iv_get

オブジェクト obj のインスタンス変数 name の値を 取得します。

rb_iv_set

オブジェクト obj のインスタンス変数 name に val を代入します。

rb_jump_tag

初出: [ruby-dev:4064]

rb_lastline_get

現在評価中の SCOPE の $_ の値を取得します。

rb_lastline_set

現在評価中の SCOPE の $_ に val を代入します。

rb_load

参考: [ruby-list:21651]

rb_load_protect
rb_longjmp
rb_make_metaclass

クラス klass のインスタンス obj に特異クラスを導入し 特異クラスと obj を結びつけます。

rb_mark_end_proc
rb_mark_generic_ivar
rb_mark_generic_ivar_tbl
rb_mark_hash
rb_mark_tbl
rb_memerror

NoMemoryErrorをraiseする。 しかしraise自体にもメモリ容量を使うため、メモリが足りない状況 ではその途中でまたメモリ不足になる可能性がある。そのため この関数では再帰を検出した場合はraiseではなくexitするように なっている。

rb_method_boundp
rb_module_new

新しいモジュールオブジェクトを作成し、返します。

rb_module_s_alloc
rb_mod_alias_method
rb_mod_ancestors

モジュール mod にインクルードされているモジュール、 さらに mod がクラスならばスーパークラスとそれに インクルードされているモジュールを再帰的に集めて メソッド探索優先順位順に並べて返します (早く探索されるほうが前)。

rb_mod_append_features
rb_mod_attr
rb_mod_attr_accessor
rb_mod_attr_reader
rb_mod_attr_writer
rb_mod_class_variables
rb_mod_clone

モジュール mod を clone して返します。

rb_mod_cmp
rb_mod_constants
rb_mod_const_at
rb_mod_const_defined
rb_mod_const_get
rb_mod_const_of
rb_mod_const_set
rb_mod_define_method
rb_mod_dup

モジュール mod を dup して返します。

rb_mod_eqq
rb_mod_extend_object
rb_mod_ge
rb_mod_gt
rb_mod_include
rb_mod_included_modules

モジュール mod にインクルードされているモジュールの配列を返します。

rb_mod_include_p

モジュール mod が mod2 をインクルードしていれば真。

rb_mod_initialize
rb_mod_le
rb_mod_lt
rb_mod_method
rb_mod_method_defined
rb_mod_modfunc
rb_mod_module_eval

Module#module_eval の実体です。

rb_mod_name

Module#name の実体です。 無名クラス、無名モジュールに対しては空文字列を返します。

rb_mod_nesting
rb_mod_private
rb_mod_private_method
rb_mod_protected
rb_mod_public
rb_mod_public_method
rb_mod_remove_const
rb_mod_remove_cvar
rb_mod_remove_method

Module#remove_method の実体。

rb_mod_s_constants
rb_mod_to_s
rb_mod_undef_method
rb_name_class

クラス klass を id と命名します。

rb_newobj

未使用のオブジェクト領域一つへのポインタを返す。 返り値が返ってきたときは失敗はない。

rb_node_newnode

ノードタイプが type で a0 a1 a2 を 要素に持つノードを生成し、返します。

rb_num2dbl

任意の Numeric のオブジェクトを double に変換します。

rb_obj_alloc

klass のインスタンスを作成する。

rb_obj_call_init

オブジェクト obj に対して initialize を呼び出します。 引数は長さ argc の配列 argv で表され、 ブロックが積んである場合はそれも自動的に渡されます。

rb_obj_class

Object#class の実体です。

rb_obj_clone

Object#clone の実体です。

rb_obj_dummy
rb_obj_dup

Object#dup の実体です。

rb_obj_equal

obj1 と obj2 が同一のオブジェクトなら真。

rb_obj_extend
rb_obj_freeze

Object#freeze

rb_obj_frozen_p

Object#frozen?

rb_obj_id

Object#object_id の実体です。

rb_obj_inspect

Object#inspect の実体です。

rb_obj_instance_eval
rb_obj_instance_variables
rb_obj_is_block

proc が Proc または Binding のインスタンスであれば真。

rb_obj_is_instance_of

obj がクラス klass のインスタンスならば真。

rb_obj_is_kind_of

obj がクラス klass およびそのサブクラスの インスタンスのとき真。

rb_obj_is_proc

proc が Proc のインスタンスであれば真。

rb_obj_method
rb_obj_methods

Object#methods の実体です。

rb_obj_private_methods

Object#private_methods の実体です。

rb_obj_protected_methods

Object#protected_methods の実体です。

rb_obj_remove_instance_variable
rb_obj_respond_to
rb_obj_singleton_methods

Object#singleton_methods の実体。 オブジェクト obj に定義されている特異メソッド名のリストを 文字列の配列で返す。

rb_obj_taint

Object#taint

rb_obj_tainted

Object#tainted?

rb_obj_untaint

Object#untaint

rb_p

p の実体。obj を見やすく出力します。

rb_parser_append_print

ruby の -p オプションの実装。 ループと print のノードを ruby_eval_tree に加えます。

rb_parser_while_loop

ruby の -n オプションの実装。 ループと print のノードを ruby_eval_tree に加えます。

rb_path2class
rb_proc_exec_n

この関数は deprecated です。

rb_proc_new

VALUE (*func)(ANYARGS); VALUE val;

rb_protect

初出: [ruby-dev:4064]

rb_provide

ライブラリ feature をロードしたものとしてロックをかけます。

rb_provided
rb_provide_feature
rb_quad_pack

この関数は deprecated です。rb_integer_pack を使用してください。

rb_quad_unpack

この関数は deprecated です。rb_integer_unpack を使用してください。

rb_raise

クラス err の例外を発生します。fmt とその後の引数は、 printf と同じ形式でエラーメッセージを表します。

rb_read_check

この関数は deprecated です。

rb_remove_method

クラス klass 自体に登録されている name という名前のメソッドを 検索し、エントリを削除します。 見付からなかったときは例外 NameError を発生します。

rb_require

require の C 版です。feature「fname」をロードします。

rb_rescue

まず b_proc(data1) を実行し、その途中で例外が発生したら r_proc(data2) を実行します。 捕捉する例外は StandardError のサブクラスだけです。

rb_rescue2

まず b_proc(data1) を実行し、その途中で例外が発生したら r_proc(data2) を実行します。 第五引数以降の可変長引数に捕捉したい例外クラスのリストを指定します。 引数の最後は NULL で終らなければなりません。

rb_reserved_word

長さ len の文字列 str が予約語であれば そのフラグテーブルを返します。str が予約語でなければ NULL を返します。

rb_respond_to

obj にメソッド id が定義されているとき真。 プライベートメソッドに対しても真を返します。

rb_run_exec_options

この関数は deprecated です。

rb_run_exec_options_err

この関数は deprecated です。

rb_safe_level

現在のセーフレベルを返します。

rb_scan_args

長さ argc の配列 argv を fmt に従って 解析し、第四引数以降で渡されたアドレスに書き込みます。

rb_secure

現在のセーフレベルが level 以上のとき、 例外 SecurityError を発生します。

rb_set_class_path
rb_set_end_proc
rb_set_safe_level

セーフレベルを level に上げます。 level が現在のセーフレベルより低い場合は 例外 SecurityError が発生します。

rb_singleton_class

obj に特異クラスを導入し、その特異クラスを返します。 すでに特異クラスが導入されているときはそれをそのまま返します。

rb_singleton_class_attached

特異クラス klass にその唯一のインスタンス obj を結びつけます。

rb_singleton_class_clone

特異クラス klass を clone して返します。 klass が特異クラスでないときはただ klass を返します。

rb_singleton_class_new

super をスーパークラスとする特異クラスを生成し、返します。

rb_source_filename
rb_String

Kernel.#String の実体です。 val を文字列に変換します。

rb_struct_iv_get

この関数は deprecated です。内部関数になりました。

rb_str_cat

文字列 str に、長さ len (NUL 含まず)の C の文字列 ptr を破壊的に連結します。

rb_str_cat2

文字列 str に C の文字列 ptr を破壊的に 連結します。ptr はヌル終端を仮定しています。

rb_str_concat

equivalent to "s1.concat s2"

rb_str_dup

文字列 str の複製を作成し返します。

rb_str_new

ptr から len バイト分をコピーして Ruby の文字列を作成し返します。

rb_str_new2

rb_str_new(ptr, strlen(ptr))

rb_str_new4

文字列 orig の変更不可能な複製を作成し返します。

rb_str_substr

str[beg, len]

rb_str_to_dbl
rb_svar

現在の SCOPE でローカル変数IDが cnt である変数の 領域へのポインタを返します。主に $_ (cnt=0) と $~ (cnt=1) に アクセスするために使われます。

rb_sym_all_symbols

呼び出し時までに変換が行われたすべてのシンボルの 配列を返す。

rb_sym_interned_p
rb_thread_abort_exc
rb_thread_abort_exc_set
rb_thread_alive_p
rb_thread_alloc
rb_thread_alone

評価器にスレッドが一つしか存在しないとき真。

rb_thread_aref
rb_thread_aset
rb_thread_atfork
rb_thread_check
rb_thread_cleanup
rb_thread_create

VALUE (*fn)(); void *arg;

rb_thread_critical_get
rb_thread_critical_set
rb_thread_current

現在実行中のスレッドを返します。

rb_thread_dead
rb_thread_deadlock
rb_thread_exit
rb_thread_fd_close
rb_thread_fd_writable
rb_thread_initialize
rb_thread_inspect
rb_thread_interrupt
rb_thread_join
rb_thread_join_m
rb_thread_keys
rb_thread_key_p
rb_thread_kill
rb_thread_list
rb_thread_local_aref
rb_thread_local_aset
rb_thread_main

メインスレッド (プロセスの一番最初に存在するスレッド) を返します。

rb_thread_pass

Thread#pass の実体。

rb_thread_polling

この関数は deprecated です。rb_thread_wait_for を使用してください。

rb_thread_priority
rb_thread_priority_set
rb_thread_raise
rb_thread_raise_m
rb_thread_ready
rb_thread_remove
rb_thread_restore_context

スレッドを切り替えるにあたって、切り替え先のスレッド th の コンテキストを評価器に復帰します。

rb_thread_run

スレッド thread に実行権を渡します。

rb_thread_safe_level
rb_thread_save_context

スレッドを切り替えるにあたって、現在実行中のスレッド th の コンテキストを評価器から th に退避します。

rb_thread_schedule

他のスレッドに実行権を渡します。 対象の特定はできません。

rb_thread_select

この関数は deprecated です。rb_thread_fd_select を使用してください。

rb_thread_signal_raise
rb_thread_sleep
rb_thread_sleep_forever
rb_thread_start
rb_thread_start_0
rb_thread_start_timer

setitimer(2) が存在する場合のみ定義されます。

rb_thread_status
rb_thread_stop

現在実行中のスレッドを停止します。 他のスレッドから rb_thread_wakeup を呼ばれると再開します。

rb_thread_stop_p
rb_thread_stop_timer

setitimer(2) が存在する場合のみ定義されます。

rb_thread_s_abort_exc
rb_thread_s_abort_exc_set
rb_thread_s_kill
rb_thread_s_new
rb_thread_trap_eval
rb_thread_value
rb_thread_wait_fd

ファイルディスクリプタ fd を読み込めるようになるまで カレントスレッドを停止します。

rb_thread_wait_for

time の長さの時間が経過するまでカレントスレッドを停止します。

rb_thread_wait_other_threads
rb_thread_wakeup

停止中のスレッド thread を再開させます。

rb_thread_yield
rb_throw

throw の実体。返り値を val として、 tag を catch したところまでジャンプします。

rb_to_id

String・Fixnum・Symbol を ID に変換します。

rb_to_int

val を to_int メソッドを使って Ruby の整数に変換します。

rb_to_integer
rb_trace_eval
rb_trap_eval
rb_true

Qtrue を返します。

rb_uint_new
rb_undef

クラス klass のメソッド id を undef します。

rb_undefined
rb_undef_method

クラス klass のインスタンスメソッド name を undef します。

rb_with_disable_interrupt
rb_yield

yield の C 版です.val を引数にブロックを実行します. 複数の引数を与えたいときは配列に格納して渡します。

rb_yield_0

カレントブロックに val を渡して処理を移す。 そのさい self とクラスを self と klass に切り替える。 Proc の呼び出しのときは pcall=非ゼロ にしなければならない。

RCLASS
RDATA
readonly_setter
read_escape

一文字に相当するバックスラッシュ記法が許す 文字列を入力バッファから読みとり、評価値を返す。 先頭のバックスラッシュはすでに読みこんでいるものと仮定する。 不正な記法に対しては yyerror を呼び出し, 0 を返す。

REALLOC_N

type 型のメモリ領域 var のサイズを n 個に変更する。

regx_options

正規表現のオプション (ixmo nesu) を読み込み フラグ (ビットマスク) を返します。

rehash

テーブルの全要素に対しハッシュ値を計算しなおして テーブルを再構成する。エントリに対して要素の数が 増えすぎ、テーブルが狭くなってきたときに発生する。

remove_method

クラス klass 自体に登録されている mid という名前のメソッドを 検索し、エントリを削除します。見付からなかったときは例外 NameError を発生します。

remove_trace
ret_args
RFILE
RFLOAT
RHASH
RMODULE
rm_final
ROBJECT
RREGEXP
RSTRING
RSTRUCT
RTEST

obj が Qfalse でも Qnil でもないとき真。

RUBY_DATA_FUNC

任意の関数へのポインタ func を struct RData の dmark/dfree の 値として適する型に強制キャストします。

ruby_finalize

評価器プロセスの終了処理を行います。

ruby_init

評価器を初期化します。Ruby C API を呼ぶプロセスでは 前もって必ずこの関数を呼ばなければなりません。

RUBY_METHOD_FUNC

任意の関数へのポインタ func を Ruby のメソッドの実体として適する 型に強制キャストします。

ruby_options

argc と argv を ruby への コマンドラインオプションとして処理します。

ruby_run

ruby_eval_tree の評価を開始します。

ruby_stack_check
ruby_stack_length
ruby_stop

評価器プロセスを停止します。

ruby_xcalloc

引数と返り値は calloc() と同じです。 ただしメモリ割り当てに失敗したときは GC を行いそれでもだめなときは例外 NoMemoryError を発生します。 つまりこの関数が返り値を返したときは常に割り当ては成功です。

ruby_xfree

以前 malloc/calloc/realloc して free していないポインタ x を 開放します。ruby のシグナル機構とコンフリクトしません。

ruby_xmalloc

引数と返り値は malloc() と同じ。 ただしメモリ割り当てに失敗したときは GC を行いそれでもだめなときは NoMemoryError を raise する。 つまりこの関数が返り値を返したときは常に割り当ては成功している。

ruby_xrealloc

引数と返り値の意味は realloc() と同じ。 ただしメモリ割り当てに失敗したときは GC を行いそれでもだめなときは NoMemoryError を raise する。 つまりこの関数が返り値を返したときは常に割り当ては成功している。

run_final

obj のファイナライズを行います。

run_single_final
SafeStringValue

StringValue と同じく、val が String でなければ to_str メソッドを 使って String に変換します。同時に rb_check_safe_str() によるチェックも 行います。

safe_getter
safe_setter
scope_dup

scope とその親の SCOPE 全ての local_vars を スタックからヒープに割り当て直します。

search_method

クラス klass から id という名前のメソッドエントリを検索し、 返します。見付からなければ NULL を返します。

secure_visibility
set_backtrace
set_method_visibility
set_trace_func

Kernel#set_trace_func の実体。 評価器に対するフック手続きを登録します。

SPECIAL_CONST_P

obj が実体の構造体を持たないとき真。 現時点で真になるのは Qnil, Qtrue, Qfalse と、 Fixnum, Symbol のインスタンス。

special_local_set

$~ と $_ をセットします。 現在は c=0 が $_ で c=1 が $~ です。

specific_eval

rb_obj_instance_eval と rb_mod_module_eval を共通化するための補助関数です。

stack_check
stack_extend
stat_col

ハッシュの衝突に関する統計を /tmp/col に出力する。 #ifdef HASH_LOG のときだけ定義される、開発者用関数。

STR2CSTR

Ruby のオブジェクト str から C の文字列を取り出します。 str が String でない場合は to_str によって変換を試みます。

strhash

文字列用のハッシュ関数。 string に対するハッシュ値を計算する。

StringValue

val が String でなければ to_str メソッドを使って String に変換します。

StringValuePtr

val が String でなければ to_str メソッドを使って String に変換し、 その実体のポインタを返します。

st_add_direct

st_insert() と似ているが、同じハッシュ値を持つエントリーに対する 「同値検査」を省略する。key がまだ登録されていないことがはっきり している場合には、少し高速に登録できる。

st_cleanup_safe

never と同じ値を持つエントリーを削除する。

st_copy

Hash#dup の実体。 old_table と同じ内容の st_table を新たに作成して返す。

st_delete

*key に対応する値をテーブルから削除し、*key、*value に登録時のキーと 値を書きこむ。返り値は削除したかどうか。

st_delete_safe

st_delete と似ているが、その場ですぐに削除するのではなく never を 書きこんでおく。st_cleanup_safe() で本当に削除できる。 Ruby では never には Qundef を使う。

st_foreach

Hash#each, delete_if などの実体。ハッシュ内の全てのキーと値、arg を 引数にして、func を実行する。func の返り値 enum st_retval は ST_CONTINUE ST_STOP ST_DELETE のどれか。どれも見ためどおりの働きをする。

st_free_table

table を解放する。キー、値は解放されない。

st_init_numtable

キーが int 型であるハッシュテーブルを作成する。

st_init_numtable_with_size

キーが int 型であるハッシュテーブルを作成する。 st_init_table() に int 用の操作関数を渡しているだけ。

st_init_strtable

キーが char* 型であるハッシュテーブルを作成する。

st_init_strtable_with_size

キーが char* 型であるハッシュテーブルを作成する。 st_init_table に文字列用の操作関数を渡しているだけ。

st_init_table
st_init_table_with_size

st_table を作成する。_with_size はサイズを指定して生成する。 struct st_hash_type はハッシュ値を得る関数と、同値判定を行う 関数を持つ。

st_insert

ハッシュに key と value の組を追加する。 古いライブラリなので void* のかわりに char* を使っている。

st_lookup

key に対応する値をみつけて value にポインタを書きこむ。 返り値は見つかったかどうかの真偽値。

superclass

クラス文のスーパークラスを表すノード node を 評価してクラスを得ます。

svalue_to_avalue
svalue_to_mvalue
sv_i
sweep_source_filename
SYM2ID

Symbol symbol を数値に変換します。 1.4では、FIX2INT(symbol)と同じです。

symbols_i

rb_sym_all_symbols() のイテレータブロック。

SYMBOL_P

obj が Symbol のインスタンスのとき真。

terminate_process
thgroup_add
thgroup_list
thgroup_s_alloc
thread_free
thread_keys_i
thread_mark
thread_status_name
thread_switch
timeofday
tok

現在のトークンの先頭へのポインタ。 free してはならない。

tokadd

トークンバッファに文字 c を追加します。

tokadd_escape

文字列・正規表現中で許されるバックスラッシュ記法を 入力バッファから読みとり、トークンバッファに追加します。 先頭のバックスラッシュはすでに読みこんでいるものと仮定します。 不正な記法に対しては yyerror を呼び出し 0 を返します。

tokadd_string
tokfix

トークンバッファを NUL で終端します。

toklast

現在のトークンの末尾へのポインタ。

toklen

現在のトークンの長さ。

top_const_get

トップレベルの定数 id を参照します。 定数 id が定義されていたら真を返し klassp に その値を書き込みます。未定義なら偽を返します。

top_include
top_local_init

パース中のプログラムのトップレベルのためのローカル変数テーブルをプッシュする。

top_local_setup

パース中のプログラムのトップレベルのためのローカル変数テーブルをポップし、 現在存在する SCOPE にそれを接ぎ足す。

top_private
top_public
trace_en
trace_ev
TYPE

obj の構造体型 ID を返します。

UINT2NUM

任意の整数を Fixnum か Bignum に変換します。

ULL2NUM
ULONG2NUM
umcall
umethod_bind

UnboundMethod method を recv に束縛します。

umethod_call
umethod_proc
umethod_unbind
undefine_final
undef_getter
undef_marker
undef_setter
value_expr

node を評価したときに、確実に値が得られない式が あるならば警告またはエラーにする。

val_getter
val_marker
val_setter
var_getter
var_marker
var_setter
void_expr

node の表すプログラムの中に値を使わないと 意味のない式があれば警告を出す。

void_stmts

node の表すプログラムの中に値を使わないと 意味のない式があれば警告を出す。

warning_unless_e_option

ruby -e で与えたプログラムの評価中ではなく、 しかも $VERBOSE が真ならば、警告メッセージ str を出力する。

warn_unless_e_option

ruby -e で与えたプログラムの評価中ではないなら、 警告メッセージ str を出力する。

whole_match_p

現在の入力行がヒアドキュメントの終端記号であれば真。

yield_under

モジュール under の元のコンテキストで ruby_block を評価します。

yield_under_i

yield_under の補助関数です。

yycompile

コンパイルを開始します。そのとき、 ファイル名 f の line 行目からを コンパイルするものと仮定します。

yyerror

パースエラーを報告するときに yyparse から呼び出されます。 エラーメッセージ msg とエラーになった場所を出力して 0 を返します。

yylex

yyparse から呼び出されるスキャンルーチンです。 次のトークンを読み込み、そのシンボルを返します。

yyparse

パースを開始します。 この関数は yacc が自動的に生成するので parse.y には存在しません。