キーワード
-
BUILTIN
_ TYPE (1) - CLONESETUP (1)
-
DATA
_ PTR (1) -
Data
_ Get _ Struct (1) -
Data
_ Wrap _ Struct (1) -
FL
_ REVERSE (1) -
FL
_ SET (1) -
FL
_ UNSET (1) - ID2SYM (1)
- NEWOBJ (1)
- OBJSETUP (1)
-
OBJ
_ FREEZE (1) -
OBJ
_ INFECT (1) -
OBJ
_ TAINT (1) - SYM2ID (1)
- StringValue (1)
- TYPE (1)
- toklast (1)
- toklen (1)
検索結果
先頭5件
-
VALUE ID2SYM(ID id) (19252.0)
-
id を Symbol に変換します。
id を Symbol に変換します。 -
void CLONESETUP(VALUE clone
, VALUE obj) (18904.0) -
OBJSETUP() の変種。 clone を、obj から clone で作った オブジェクトとして初期化します。
OBJSETUP() の変種。
clone を、obj から clone で作った
オブジェクトとして初期化します。 -
void StringValue(VALUE val) (18904.0)
-
val が String でなければ to_str メソッドを使って String に変換します。
val が String でなければ to_str メソッドを使って String に変換します。
このマクロに渡した VALUE は ruby の GC から確実に保護されます。 -
int SYM2ID(VALUE symbol) (18604.0)
-
Symbol symbol を数値に変換します。 1.4では、FIX2INT(symbol)と同じです。
Symbol symbol を数値に変換します。
1.4では、FIX2INT(symbol)と同じです。 -
static char* toklast(void) (18604.0)
-
現在のトークンの末尾へのポインタ。
現在のトークンの末尾へのポインタ。 -
static int toklen(void) (18604.0)
-
現在のトークンの長さ。
現在のトークンの長さ。 -
void FL
_ REVERSE(VALUE x , int f) (18604.0) -
x のフラグ f を反転する。
x のフラグ f を反転する。 -
void FL
_ SET(VALUE x , int f) (18604.0) -
x に対してフラグ f をセットする。
x に対してフラグ f をセットする。 -
void FL
_ UNSET(VALUE x , int f) (18604.0) -
x のフラグ f をクリアする。
x のフラグ f をクリアする。 -
int BUILTIN
_ TYPE(VALUE obj) (18352.0) -
obj の構造体型 ID を返します。 SPECIAL_CONST_P(obj) が真のオブジェクトに対して使うと落ちます。
obj の構造体型 ID を返します。
SPECIAL_CONST_P(obj) が真のオブジェクトに対して使うと落ちます。 -
VALUE Data
_ Wrap _ Struct(VALUE klass , RUBY _ DATA _ FUNC mark , RUBY _ DATA _ FUNC free , void *sval) (904.0) -
C の構造体 sval をラップして klass クラスの インスタンスである Ruby オブジェクトを生成し、それを返します。 mark、free はそれぞれ sval のマーク用・解放用の 関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。
C の構造体 sval をラップして klass クラスの
インスタンスである Ruby オブジェクトを生成し、それを返します。
mark、free はそれぞれ sval のマーク用・解放用の
関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。
また RUBY_DATA_FUNC の定義は以下のようです。
typedef void (*RUBY_DATA_FUNC)(void *st)
第一引数 st には sval が渡されます。
使用例
struct mytype {
int i;
char *s;
... -
void OBJ
_ INFECT(VALUE dest , VALUE src) (904.0) -
src に汚染マークが付いていたら dest も汚染する。
src に汚染マークが付いていたら dest も汚染する。 -
void * DATA
_ PTR(VALUE dta) (604.0) -
実際は struct RData* 型である dta から、 それがラップしているポインタを取り出します。
実際は struct RData* 型である dta から、
それがラップしているポインタを取り出します。 -
void Data
_ Get _ Struct(VALUE obj , type , type *svar) (604.0) -
Ruby のオブジェクト obj から type 型へのポインタを とりだし svar に代入します。
Ruby のオブジェクト obj から type 型へのポインタを
とりだし svar に代入します。
使用例
struct mytype {
int i;
char *s;
};
VALUE
my_i(VALUE self)
{
struct mytype *m;
Data_Get_Struct(self, struct mytype, m);
return INT2NUM(m->i);
} -
void NEWOBJ(obj
, int typeflag) (604.0) -
-
void OBJSETUP(obj
, VALUE klass , int typeflag) (604.0) -
obj をクラス klass とフラグ typeflag で初期化する。
obj をクラス klass とフラグ typeflag で初期化する。 -
void OBJ
_ FREEZE(VALUE x) (604.0) -
-
void OBJ
_ TAINT(VALUE x) (604.0) -
x に汚染マークを付ける。
x に汚染マークを付ける。 -
int TYPE(VALUE obj) (352.0)
-
obj の構造体型 ID を返します。
obj の構造体型 ID を返します。