るりまサーチ

最速Rubyリファレンスマニュアル検索!
261件ヒット [1-100件を表示] (0.179秒)
トップページ > クエリ:I[x] > クエリ:Require[x] > クエリ:r[x] > クエリ:unpack[x]

別のキーワード

  1. kernel require
  2. getoptlong require_order
  3. rubygems/custom_require require
  4. irb/ext/use-loader irb_require
  5. require execute

ライブラリ

クラス

モジュール

キーワード

検索結果

<< 1 2 3 > >>

String#unpack(template) -> Array (24939.0)

Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。

...Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。

@param template pack テンプレート文字列
@return オブジェクトの配列


以下にあげるもの...
...は、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。

長さの意味はテ...
....unpack("N")[0]
i
f n[31] == 1
n = -((n ^ 0xffff_ffff) + 1)
end
n # => -2
//}

: ネットワークバイトオーダの signed long(その2)
//emlist[][ruby]{
s = "\xFF\xFF\xFF\xFE"
n = s.unpack("N").pack("l").unpack("l")[0]
n # => -2
//}

: IPアドレス
//emlist[][ruby]{
require
'socket'
offici...
...は、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。

長さ...

Socket.unpack_sockaddr_in(sockaddr) -> Array (18335.0)

lib:socket#pack_stringを unpack したアドレスを返します。返される値は [port, ipaddr] の配列です。

...lib:socket#pack_stringを
unpack
したアドレスを返します。返される値は [port, ipaddr]
の配列です。

@param sockaddr ソケットアドレス構造体を pack した文字列lib:socket#pack_stringを指定します。

例:

require
'socket'
p Socket.unpack_sockaddr_in(Soc...
...ket.sockaddr_in("echo", "localhost"))
=> [7, "127.0.0.1"]
p Socket.unpack_sockaddr_in(Socket.sockaddr_in("echo", "::1"))
=> [7, "::1"]...

Addrinfo#ip_unpack -> [String, Integer] (15319.0)

IP アドレスとポート番号を 2 要素の配列で返します。

...IP アドレスとポート番号を 2 要素の配列で返します。

require
'socket'

Addrinfo.tcp("127.0.0.1", 80).ip_unpack #=> ["127.0.0.1", 80]
Addrinfo.tcp("::1", 80).ip_unpack #=> ["::1", 80]

@see Addrinfo#ip_address, Addrinfo#ip_port...

Socket.unpack_sockaddr_un(sockaddr) -> String (12329.0)

lib:socket#pack_stringを unpack したソケットパス名を返します。

...lib:socket#pack_stringを
unpack
したソケットパス名を返します。

@param sockaddr ソケットアドレス構造体を pack した文字列lib:socket#pack_stringを指定します。

例:

require
'socket'
p Socket.unpack_sockaddr_un(Socket.sockaddr_un("/tmp/.X11-unix/X0"))
=>...
..."/tmp/.X11-unix/X0"...

Addrinfo#ip_address -> String (12212.0)

IP アドレスを文字列で返します。

...IP アドレスを文字列で返します。

require
'socket'

Addrinfo.tcp("127.0.0.1", 80).ip_address #=> "127.0.0.1"
Addrinfo.tcp("::1", 80).ip_address #=> "::1"

@see Addrinfo#ip_port, Addrinfo#ip_unpack...

絞り込み条件を変える

Addrinfo#ip_port -> Integer (12212.0)

ポート番号を整数で返します。

...ポート番号を整数で返します。

require
'socket'

Addrinfo.tcp("127.0.0.1", 80).ip_port #=> 80
Addrinfo.tcp("::1", 80).ip_port #=> 80

@see Addrinfo#ip_address, Addrinfo#ip_unpack...

fiddle/import (12042.0)

fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。

...fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。

通常は fiddle ライブラリを使わずこの fiddle/import ライブラリを使います。

主な使い方は fiddle も参照してください。

=== 高度な使用法

====...
...
double sum(double *arry, int len);
があったとします。これを呼び出したい場合は以下のように Array#pack を使用します。

require
'fiddle/import'
module M
extend Fiddle::Importer
dlload './libsum.so'
extern 'double sum(double*, int)'
end
p M.sum([2.0,...
...0 = Fiddle.dlunwrap(b.ptr.to_i)
a0 <=> b0
}
extern 'void qsort(void *, int, int, void *)'
end

buff = [Time.at(1), Time.now, Time.at(100), Time.at(10)]
a = buff.map{|t| Fiddle.dlwrap(t)}.pack('l!*')
M.qsort(a, buff.size, Fiddle::SIZEOF_VOIDP, M::QsortCallback)
p a.unpack('l!...

Fiddle::Pointer#ptr -> Fiddle::Pointer (9318.0)

自身の指す値を Pointer にして返します。

...inter にして返します。

自身の指す値はポインタであると仮定します。
C 言語におけるポインタのポインタに対する間接参照 *p と同じです。

この返り値には、free 関数がセットされず、size は 0 とされます。

例:

require
'fi...
...ddle'

s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s #=> "abc"...

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

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

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

これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出す...
...@return インポートした関数を表す Fiddle::Function オブジェクトを返します。

@param signature 関数の名前とシネグチャ
@param opts オプション


require
'fiddle/import'

module M
extend Fiddle::Importer
dlload "libc.so.6"
typealias "size_t",...
...unsigned long"
extern "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!*"...

BasicSocket#getpeername -> String (9218.0)

接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ クした文字列を返します。getpeername(2) を参照してください。

...sockaddr 構造体をパッ
クした文字列を返します。getpeername(2) を参照してください。

例:

require
'socket'

serv = TCPServer.open("", 0)
c = TCPSocket.open(*Socket.unpack_sockaddr_in(serv.getsockname).reverse)
s = serv.accept
addr = c.getpeername
p addr #=...
...> "\002\000\267\214\177\000\000\001\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(addr) #=> [46988, "127.0.0.1"]
p addr == s.getsockname #=> true...

絞り込み条件を変える

<< 1 2 3 > >>