るりまサーチ

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

別のキーワード

  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 (18653.0)

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

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


以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「...
...le endian signed long
//}

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
「Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(ヌル文字を詰める/後続するヌル...
...E"
n = s.unpack("N")[0]
if 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...
...ate pack テンプレート文字列
@return オブジェクトの配列


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

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

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

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

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

例:

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

Socket.unpack_sockaddr_un(sockaddr) -> String (6129.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"))
=>...

Addrinfo#ip_unpack -> [String, Integer] (6119.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...

Array#pack(template) -> String (558.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...定した場合は返値も指定した文字列オブジェクトになります。


以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます...
...le endian signed long
//}

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
「Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(ヌル文字を詰める/後続するヌル...
...E"
n = s.unpack("N")[0]
if 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...

絞り込み条件を変える

Array#pack(template, buffer: String.new) -> String (558.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...定した場合は返値も指定した文字列オブジェクトになります。


以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます...
...le endian signed long
//}

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
「Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(ヌル文字を詰める/後続するヌル...
...E"
n = s.unpack("N")[0]
if 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...

Array#pack(template) -> String (546.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...イナリとしてパックするためのテンプレートを文字列で指定します。


以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「...
...le endian signed long
//}

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
「Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(ヌル文字を詰める/後続するヌル...
...E"
n = s.unpack("N")[0]
if 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...

pack テンプレート文字列 (546.0)

pack テンプレート文字列

...pack テンプレート文字列

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

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
「Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(ヌル文字を詰める/後続するヌル...
...E"
n = s.unpack("N")[0]
if 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...
...pack テンプレート文字列

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

ruby 1.6 feature (108.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

...04-15: pack('U')

pack('U') を unpack('U') すると元に戻らないバグが修正されました。
(unpack は、バイト単位でなく文字単位の処理になりました)
((<ruby-bugs-ja:PR#220>))

p [128].pack("U")
p [128].pack("U").unpack("U")

=> ruby 1.6.7 (2002-03...
...張ライブラリに対して autoload が効いていませんでした。((<ruby-dev:16379>))

autoload :Fcntl, "fcntl"
require
"fcntl"

=> -:2:in `require': uninitialized constant Fcntl (NameError)
from -:2
ruby 1.6.7 (2002-03-01) [i586-linux]

=> ruby 1.6.7 (2...
...数が既に定義されていると失敗していました。((<ruby-talk:30203>))

Constants = 1
require
'syslog'
p Syslog::Constants

=> -:2:in `require': Syslog::Fixnum is not a module (TypeError)
from -:2
ruby 1.6.6 (2001-12-26) [i5...

fiddle (48.0)

*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。

...2.2.0 で削除されました。このライブラリ
を代わりに使います。

=== 使い方

通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
dl と基本的な使いかたは良く似ています。
Fiddle モジュール自...
...いません。
Fiddle::Importer モジュールは以下のようにユーザが定義した
モジュールを拡張する形で使います。

require
"fiddle/import"
module M
extend Fiddle::Importer
end

以後、このモジュールで dlload や extern などのメソッドが使...
...取る関数に対しても文字列を渡します。

require
"fiddle/import"
module M
extend Fiddle::Importer
dlload 'libm.so.6'
extern 'double modf(double, double *)'
end

s = ' ' * 8
p M2.modf(1.25, s) #=> 0.25
p s.unpack('d')[0] #=> 1.0

==== 関数の引数と返り値
fidd...
...2.2.0 で削除されました。このライブラリ
を代わりに使います。

=== 使い方

通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
Fiddle モジュール自体はプリミティブな機能しか提供していませ...
...をロードし、
使用したいライブラリ関数に対して extern メソッドを呼んで
ラッパーメソッドを定義します。

require
"fiddle/import"
module M
extend Fiddle::Importer
dlload "libc.so.6","libm.so.6"
extern "int strlen(char*)"
end
# Note that we...

絞り込み条件を変える

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

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

...


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!*")
M.qsort(Fiddle::Pointer[data], 6, Fiddle::SIZEOF_INT, M["compare"])
p data.unpack("i!*") # => [-13, -1, 0, 32, 49, 180001]...
<< 1 2 3 ... > >>