キーワード
- ALLOC (12)
-
ALLOCA
_ N (12) -
ALLOC
_ N (12) -
BUILTIN
_ TYPE (12) - CLONESETUP (12)
-
DATA
_ PTR (12) - DUPSETUP (12)
-
Data
_ Get _ Struct (12) -
Data
_ Make _ Struct (12) -
Data
_ Wrap _ Struct (12) - FIX2INT (12)
- FIX2UINT (12)
- FIXABLE (12)
-
FIXNUM
_ P (12) -
FL
_ ABLE (12) -
FL
_ REVERSE (12) -
FL
_ SET (12) -
FL
_ TEST (12) -
FL
_ UNSET (12) -
IMMEDIATE
_ P (12) - INT2FIX (12)
- INT2NUM (12)
- ISALNUM (12)
- ISALPHA (12)
- ISASCII (12)
- ISDIGIT (12)
- ISLOWER (12)
- ISPRINT (12)
- ISSPACE (12)
- ISUPPER (12)
- ISXDIGIT (12)
- MEMCMP (12)
- MEMCPY (12)
- MEMMOVE (12)
- MEMZERO (12)
- NEGFIXABLE (12)
- NEWOBJ (12)
-
NIL
_ P (12) - NUM2INT (12)
- NUM2SHORT (12)
- NUM2UINT (12)
- NUM2USHORT (12)
- OBJSETUP (12)
-
OBJ
_ FROZEN (12) -
OBJ
_ INFECT (12) -
OBJ
_ TAINT (12) -
OBJ
_ TAINTED (12) - POSFIXABLE (12)
- RARRAY (12)
- RBASIC (12)
- RBIGNUM (12)
- RCLASS (12)
- RDATA (12)
-
REALLOC
_ N (12) - RFILE (12)
- RFLOAT (12)
- RHASH (12)
- RMODULE (12)
- ROBJECT (12)
- RREGEXP (12)
- RSTRING (12)
-
RSTRING
_ END (12) -
RSTRING
_ LEN (12) -
RSTRING
_ LENINT (12) -
RSTRING
_ PTR (12) - RSTRUCT (12)
- RTEST (12)
-
SPECIAL
_ CONST _ P (12) - STR2CSTR (12)
- SYM2ID (12)
-
SYMBOL
_ P (12) - StringValue (12)
- StringValuePtr (12)
- TYPE (12)
- UINT2NUM (12)
- peek (12)
- tok (12)
- tokfix (12)
- toklast (12)
- toklen (12)
検索結果
先頭5件
-
static char * tok(void) (26101.0)
-
現在のトークンの先頭へのポインタ。 free してはならない。
現在のトークンの先頭へのポインタ。
free してはならない。 -
static char* toklast(void) (26101.0)
-
現在のトークンの末尾へのポインタ。
現在のトークンの末尾へのポインタ。 -
static int toklen(void) (26101.0)
-
現在のトークンの長さ。
現在のトークンの長さ。 -
static void tokfix(void) (26101.0)
-
トークンバッファを NUL で終端します。
トークンバッファを NUL で終端します。 -
char* RSTRING
_ PTR(RString str) (12401.0) -
引数 str の表す文字列のポインタの先頭を返します。
...引数 str の表す文字列のポインタの先頭を返します。
@param str RString 構造体を指定します。
@see RSTRING_END... -
char * STR2CSTR(VALUE str) (12301.0)
-
Ruby のオブジェクト str から C の文字列を取り出します。 str が String でない場合は to_str によって変換を試みます。
...クト str から C の文字列を取り出します。
str が String でない場合は to_str によって変換を試みます。
返り値を free したり直接書き換えたりしてはいけません。
STR2CSTR は、与えられたオブジェクトが文字列でなく to_str メソ......ッ
ドを持つ場合、内部で to_str を呼び出して暗黙の型変換を行い、
それが保持する文字列ポインタを返します。
しかし、このAPIでは暗黙の型変換結果となるオブジェクトがどこからも
保持されないため、注意して使用しな......以降では代わりに StringValuePtr を使用します。こちら
は、引数の参照先が暗黙の型変換の結果に置き換わるため変換結果が GC
されません。(Ruby 1.7 では、STR2CSTR() は、obsolete です)
StringValue は、引数が to_str による暗黙の型変... -
char * StringValuePtr(VALUE val) (12201.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) (6301.0) -
type 型の構造体をヒープに割り当ててそれへのポインタを svar に代入し、クラス klass のインスタンスである Ruby のオブジェクトを生成し、それを返します。mark free はそれぞれマーク用・解放用の関数へのポインタです。 どちらも、必要ないときはかわりに 0 を渡します。
...
type 型の構造体をヒープに割り当ててそれへのポインタを
svar に代入し、クラス klass のインスタンスである
Ruby のオブジェクトを生成し、それを返します。mark
free はそれぞれマーク用・解放用の関数へのポインタです。
ど......_DATA_FUNC の定義は以下のようです。
typedef void (*RUBY_DATA_FUNC)(void *st)
第一引数 st には svar の値が渡されます。
使用例
struct mytype {
int i;
char *s;
};
VALUE
my_s_new(klass)
VALUE klass;
{
struct mytyp......e *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) (6301.0) -
C の構造体 sval をラップして klass クラスの インスタンスである Ruby オブジェクトを生成し、それを返します。 mark、free はそれぞれ sval のマーク用・解放用の 関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。
...UBY_DATA_FUNC の定義は以下のようです。
typedef 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);
}...