るりまサーチ

最速Rubyリファレンスマニュアル検索!
96件ヒット [1-96件を表示] (0.115秒)
トップページ > クエリ:t[x] > クエリ:Ruby[x] > 種類:マクロ[x]

別のキーワード

  1. openssl t61string
  2. asn1 t61string
  3. matrix t
  4. t61string new
  5. fiddle type_size_t

キーワード

検索結果

char * STR2CSTR(VALUE str) (12329.0)

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

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

返り値を free したり直接書き換えたりしてはいけません。

STR2CSTR は、与えられたオブジェクトが文字列で...
...なく to_str メソッ
ドを持つ場合、内部で to_str を呼び出して暗黙の型変換を行い、
それが保持する文字列ポインタを返します。
しかし、このAPIでは暗黙の型変換結果となるオブジェクトがどこからも
保持されないため、注...
...す。

Ruby
1.7 以降では代わりに StringValuePtr を使用します。こちら
は、引数の参照先が暗黙の型変換の結果に置き換わるため変換結果が GC
されません。(Ruby 1.7 では、STR2CSTR() は、obsolete です)

StringValue は、引数が to_str によ...

char * StringValuePtr(VALUE val) (12207.0)

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

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

このマクロに渡した VALUE は ruby の GC から確実に保護されます。...

VALUE Data_Make_Struct(VALUE klass, type, RUBY_DATA_FUNC mark, RUBY_DATA_FUNC free, type *svar) (6529.0)

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

...
t
ype 型の構造体をヒープに割り当ててそれへのポインタを
svar に代入し、クラス klass のインスタンスである
Ruby
のオブジェクトを生成し、それを返します。mark
free はそれぞれマーク用・解放用の関数へのポインタです。
...
... RUBY_DATA_FUNC の定義は以下のようです。

t
ypedef void (*RUBY_DATA_FUNC)(void *st)

第一引数 st には svar の値が渡されます。

使用例

struct mytype {
int i;
char *s;
};

VALUE
my_s_new(klass)
VALUE klass;
{
struct...
...mytype *dummy;
return Data_Make_Struct(MyClass, struct mytype,
mark_my, free_my, dummy);
}...

VALUE Data_Wrap_Struct(VALUE klass, RUBY_DATA_FUNC mark, RUBY_DATA_FUNC free, void *sval) (6529.0)

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

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

また RUBY_DATA_FUNC の定義は以下のようです。

t
ype...
...def void (*RUBY_DATA_FUNC)(void *st)

第一引数 st には sval が渡されます。

使用例

struct mytype {
int i;
char *s;
};

VALUE
my_s_new(klass)
VALUE klass;
{
struct mytype *m = malloc(sizeof(struct mytype));
m->i = 0;...
...m->s = 0;
return Data_Wrap_Struct(MyClass, 0, free_my, m);
}...

struct RString * RSTRING(VALUE obj) (6307.0)

引数 obj を RString 構造体にキャストして返します。

...引数 obj を RString 構造体にキャストして返します。

@param obj Rubyの文字列オブジェクトを指定します。...

絞り込み条件を変える

void Data_Get_Struct(VALUE obj, type, type *svar) (6117.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);
}...

VALUE INT2NUM(int i) (6107.0)

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

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

例:
VALUE num = INT2NUM(42); //(Cの整数値42をRubyのオブジェクトに変換)...

void StringValue(VALUE val) (6107.0)

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

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

このマクロに渡した VALUE は ruby の GC から確実に保護されます。...