るりまサーチ

最速Rubyリファレンスマニュアル検索!
77件ヒット [1-77件を表示] (0.113秒)

別のキーワード

  1. socket int
  2. prime int_from_prime_division
  3. _builtin to_int
  4. mkmf convertible_int
  5. fiddle sizeof_int

ライブラリ

クラス

モジュール

キーワード

検索結果

Fiddle::Importer#sizeof(t) -> Integer (18248.0)

C における sizeof(t) の値を返します。

...C における sizeof(t) の値を返します。

t が文字列の場合、その文字列が表す C の型の size が返されます。
例えば、sizeof("char") は 1 を返します。
sizeof
("char*") は環境によって 4 や 8 といった値を返します。

Fiddle::Importer#struct...
...の場合、t が to_ptr というインスタンスメソッドを持っている
ならば t.size を返します。

それ以外の場合は Pointer[t].size を返します。

@param t サイズを計算する対象
@raise Fiddle::DLError t として文字列を渡し、それが表している...
...型を Fiddle が知らなかった
場合に発生します

例:

require 'fiddle/import'

module M
extend Fiddle::Importer
Timeval = struct(["long tv_sec", "long tv_usec"])
p sizeof("char") # => 1
p sizeof("void*") # => 8
p sizeof(Timeval) # => 16
end...

Socket::Option#int -> Integer (18214.0)

オプションのデータ(内容)を整数に変換して返します。

...オプションのデータ(内容)を整数に変換して返します。

@raise TypeError dataのバイト数が不適切である(sizeof(int)と異なる)場合に発生します
@see Socket::Option#data...

Kernel#check_sizeof(type, headers = nil) -> Integer | nil (6215.0)

与えられた型のサイズを返します。

...ローバル変数 $defs に
"-DSIZEOF_type=X" を追加し、型のサイズを返します。型 type がシステムに
存在しない場合は、nil を返します。

例えば、

require 'mkmf'
check_sizeof('mystruct') # => 12

である場合、SIZEOF_MYSTRUCT=12 というプリプロ...

Kernel#check_sizeof(type, headers = nil) { ... } -> Integer | nil (6215.0)

与えられた型のサイズを返します。

...ローバル変数 $defs に
"-DSIZEOF_type=X" を追加し、型のサイズを返します。型 type がシステムに
存在しない場合は、nil を返します。

例えば、

require 'mkmf'
check_sizeof('mystruct') # => 12

である場合、SIZEOF_MYSTRUCT=12 というプリプロ...

Socket::Option#linger -> [bool, Integer] (107.0)

オプションが SOL_SOCKET/SO_LINGER である場合に、 オプションのデータ(内容)を真偽値と整数のペアとして返します。

...プションのデータ(内容)を真偽値と整数のペアとして返します。

@raise TypeError dataのバイト数が不適切である(sizeof(struct linger)と異なる)場合や、
level/optname が SOL_SOCKET/SO_LINGER でないに発生します
@see Socket::Option#dat...

絞り込み条件を変える

Fiddle::Importer#bind(signature, *opts) { ... } -> Fiddle::Function (55.0)

Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。

...tion オブジェクトとして
取り出すことができます。

signature で関数の名前とシネグチャを指定します。例えば
"int compare(void*, void*)" のように指定します。

opts には :stdcall もしくは :cdecl を渡すことができ、
呼出規約を明示...
..."int qsort(void*, size_t, size_t, void*)"

bind("int compare(void*, void*)"){|px, py|
x = px.to_s(Fiddle::SIZEOF_INT).unpack("i!")
y = py.to_s(Fiddle::SIZEOF_INT).unpack("i!")

x <=> y
}
end

data = [32, 180001, -13, -1, 0, 49].pack("i!*")
M.qsort(Fiddle::Pointe...
...r[data], 6, Fiddle::SIZEOF_INT, M["compare"])
p data.unpack("i!*") # => [-13, -1, 0, 32, 49, 180001]...

Socket::Option#bool -> bool (13.0)

オプションのデータ(内容)を真偽値に変換して返します。

...オプションのデータ(内容)を真偽値に変換して返します。

@raise TypeError dataのバイト数が不適切である(sizeof(int)と異なる)場合に発生します
@see Socket::Option#data...