キーワード
- CHR2FIX (1)
-
DATA
_ PTR (1) -
Data
_ Get _ Struct (1) -
Data
_ Make _ Struct (1) -
Data
_ Wrap _ Struct (1) -
FL
_ REVERSE (1) - ISALNUM (1)
- NUM2CHR (1)
- NUM2SHORT (1)
- NUM2USHORT (1)
-
OBJ
_ FREEZE (1) -
OBJ
_ FROZEN (1) -
OBJ
_ INFECT (1) - RARRAY (1)
- RBASIC (1)
- RBIGNUM (1)
- RCLASS (1)
- RDATA (1)
- RFILE (1)
- RFLOAT (1)
- RHASH (1)
- RMODULE (1)
- ROBJECT (1)
- RREGEXP (1)
- RSTRING (1)
- RSTRUCT (1)
- RTEST (1)
- STR2CSTR (1)
- StringValue (1)
- StringValuePtr (1)
検索結果
先頭5件
-
char * StringValuePtr(VALUE val) (55504.0)
-
val が String でなければ to_str メソッドを使って String に変換し、 その実体のポインタを返します。
val が String でなければ to_str メソッドを使って String に変換し、
その実体のポインタを返します。
このマクロに渡した VALUE は ruby の GC から確実に保護されます。 -
void StringValue(VALUE val) (55504.0)
-
val が String でなければ to_str メソッドを使って String に変換します。
val が String でなければ to_str メソッドを使って String に変換します。
このマクロに渡した VALUE は ruby の GC から確実に保護されます。 -
struct RClass * RMODULE(VALUE obj) (54904.0)
-
-
VALUE Data
_ Make _ Struct(VALUE klass , type , RUBY _ DATA _ FUNC mark , RUBY _ DATA _ FUNC free , type *svar) (38104.0) -
type 型の構造体をヒープに割り当ててそれへのポインタを svar に代入し、クラス klass のインスタンスである Ruby のオブジェクトを生成し、それを返します。mark free はそれぞれマーク用・解放用の関数へのポインタです。 どちらも、必要ないときはかわりに 0 を渡します。
type 型の構造体をヒープに割り当ててそれへのポインタを
svar に代入し、クラス klass のインスタンスである
Ruby のオブジェクトを生成し、それを返します。mark
free はそれぞれマーク用・解放用の関数へのポインタです。
どちらも、必要ないときはかわりに 0 を渡します。
また RUBY_DATA_FUNC の定義は以下のようです。
typedef void (*RUBY_DATA_FUNC)(void *st)
第一引数 st には svar の値が渡されます。
使用例
struct mytype {
int i;
... -
struct RStruct * RSTRUCT(VALUE obj) (38104.0)
-
-
VALUE Data
_ Wrap _ Struct(VALUE klass , RUBY _ DATA _ FUNC mark , RUBY _ DATA _ FUNC free , void *sval) (37504.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;
... -
short NUM2SHORT(VALUE x) (37204.0)
-
x を short 型の整数に変換します。
x を short 型の整数に変換します。
x が Fixnum、Float、Bignum オブジェクトのいずれでもな
い場合は x.to_int による暗黙の型変換を試みます。
@raise TypeError x が nil の場合か、暗黙の型変換が成功しなかった場合に
発生します。
@raise RangeError x が short 型で表現できる値の範囲外であった場合に発生
します。 -
struct RClass * RCLASS(VALUE obj) (37204.0)
-
-
struct RFile * RFILE(VALUE obj) (37204.0)
-
-
struct RFloat * RFLOAT(VALUE obj) (37204.0)
-
-
unsigned short NUM2USHORT(VALUE x) (37204.0)
-
x を unsigned short 型の整数に変換します。
x を unsigned short 型の整数に変換します。
x が Fixnum、Float、Bignum オブジェクトのいずれでもな
い場合は x.to_int による暗黙の型変換を試みます。
@raise TypeError x が nil の場合か、暗黙の型変換が成功しなかった場合に
発生します。
@raise RangeError x が unsigned short 型で表現できる値の範囲外であった
場合に発生します。 -
char NUM2CHR(VALUE x) (36904.0)
-
-
int ISALNUM(char c) (36904.0)
-
-
struct RArray * RARRAY(VALUE obj) (36904.0)
-
obj を struct RArray* にキャストする。 本当は obj が struct RArray* でないとしてもキャストしてしまう。
obj を struct RArray* にキャストする。
本当は obj が struct RArray* でないとしてもキャストしてしまう。 -
struct RBignum * RBIGNUM(VALUE obj) (36904.0)
-
-
void Data
_ Get _ Struct(VALUE obj , type , type *svar) (36904.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 FL
_ REVERSE(VALUE x , int f) (36904.0) -
x のフラグ f を反転する。
x のフラグ f を反転する。 -
VALUE CHR2FIX(char x) (18904.0)
-
char 型の整数 x を Ruby の Fixnum に変換します。
char 型の整数 x を Ruby の Fixnum に変換します。 -
char * STR2CSTR(VALUE str) (18904.0)
-
Ruby のオブジェクト str から C の文字列を取り出します。 str が String でない場合は to_str によって変換を試みます。
Ruby のオブジェクト str から C の文字列を取り出します。
str が String でない場合は to_str によって変換を試みます。
返り値を free したり直接書き換えたりしてはいけません。
STR2CSTR は、与えられたオブジェクトが文字列でなく to_str メソッ
ドを持つ場合、内部で to_str を呼び出して暗黙の型変換を行い、
それが保持する文字列ポインタを返します。
しかし、このAPIでは暗黙の型変換結果となるオブジェクトがどこからも
保持されないため、注意して使用しないと結果が GC される可能性があります。
Ruby 1.7 以降では代わりに S... -
int OBJ
_ FROZEN(VALUE x) (18904.0) -
-
int RTEST(VALUE obj) (18904.0)
-
obj が Qfalse でも Qnil でもないとき真。
obj が Qfalse でも Qnil でもないとき真。 -
struct RBasic * RBASIC(VALUE obj) (18904.0)
-
-
struct RData * RDATA(VALUE obj) (18904.0)
-
-
struct RHash * RHASH(VALUE obj) (18904.0)
-
-
struct RObject * ROBJECT(VALUE obj) (18904.0)
-
-
struct RRegexp * RREGEXP(VALUE obj) (18904.0)
-
-
struct RString * RSTRING(VALUE obj) (18904.0)
-
引数 obj を RString 構造体にキャストして返します。
引数 obj を RString 構造体にキャストして返します。
@param obj Rubyの文字列オブジェクトを指定します。 -
void * DATA
_ PTR(VALUE dta) (18904.0) -
実際は struct RData* 型である dta から、 それがラップしているポインタを取り出します。
実際は struct RData* 型である dta から、
それがラップしているポインタを取り出します。 -
void OBJ
_ FREEZE(VALUE x) (18904.0) -
-
void OBJ
_ INFECT(VALUE dest , VALUE src) (1504.0) -
src に汚染マークが付いていたら dest も汚染する。
src に汚染マークが付いていたら dest も汚染する。