るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
92件ヒット [1-92件を表示] (0.030秒)
トップページ > バージョン:2.3.0[x] > クエリ:|[x] > クエリ:ver[x]

別のキーワード

  1. _builtin |
  2. set |
  3. ipaddr |
  4. integer |
  5. array |

モジュール

検索結果

OptionParser#ver -> String (54358.0)

program_name、version と release から生成したバージョンを表す文字列を返します。

program_name、version と release から生成したバージョンを表す文字列を返します。

//emlist[例][ruby]{
require "optparse"

OptionParser.new do |opts|
opts.banner = "Usage: example.rb [options]"
opts.program_name = "Optparse Example"
opts.version = [0, 1]
opts.release = "2019-05-01"

opts.on_tail("--version", "Show v...

Net::HTTP#ssl_version -> String | Symbol | nil (18907.0)

利用するプロトコルの種類を返します。

利用するプロトコルの種類を返します。

@see Net::HTTP#ssl_version=

RDoc::Options#verbosity -> 0 | 1 | 2 (18907.0)

プログラムの解析時に表示する情報の詳細さを数値で返します。

プログラムの解析時に表示する情報の詳細さを数値で返します。

以下の値を指定する事ができます。

: 0(--quiet オプションを指定した場合)

情報を表示しません。

: 1

通常の表示を行います。

: 2(--verbose オプションを指定した場合)

詳細な情報を表示します。

DRb.#primary_server -> DRb::DRbServer|nil (18904.0)

ローカルプロセスのプライマリサーバーを返します。

ローカルプロセスのプライマリサーバーを返します。

プライマリサーバとは DRb.#start_service によって
起動されるサーバです。

サーバが動いていない場合は nil を返します。

@see DRb.#stop_service

Observable#delete_observer(observer) -> object | nil (18904.0)

オブザーバを削除します。

オブザーバを削除します。

指定されたオブジェクトがオブザーバとして登録されていた場合は、
リストからオブジェクトを削除し、取り除かれたオブジェクトを返します。
登録されていなかった場合は、nil を返します。

@param observer 削除するオブザーバ

絞り込み条件を変える

Socket.tcp_server_sockets(host, port) {|sockets| ...} -> object (18661.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

Socket.tcp_server_sockets(port) {|sockets| ...} -> object (18661.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

CSV#convert {|field, field_info| ... } (18643.0)

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。

引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。

ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
...

CSV#convert {|field| ... } (18643.0)

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。

引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。

ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
...

CSV#header_convert {|field, field_info| ... } (18643.0)

CSV#convert に似ていますが、ヘッダ行用のメソッドです。

CSV#convert に似ていますが、ヘッダ行用のメソッドです。

このメソッドはヘッダ行を読み込む前に呼び出さなければなりません。

@param name 変換器の名前を指定します。

//emlist[例 name を指定][ruby]{
require "csv"

csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv.header_convert(:symbol)
csv.first.headers # => [:header1, :header2]
//}

//emlist[例 ブロックを指定][...

絞り込み条件を変える

CSV#header_convert {|field| ... } (18643.0)

CSV#convert に似ていますが、ヘッダ行用のメソッドです。

CSV#convert に似ていますが、ヘッダ行用のメソッドです。

このメソッドはヘッダ行を読み込む前に呼び出さなければなりません。

@param name 変換器の名前を指定します。

//emlist[例 name を指定][ruby]{
require "csv"

csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv.header_convert(:symbol)
csv.first.headers # => [:header1, :header2]
//}

//emlist[例 ブロックを指定][...

Socket.tcp_server_loop(host, port) {|sock,addr| ...} -> () (18643.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。

ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。

ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。

このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリターンするまで次のコネクションを受け入れません。
そのため、同時に複数のクライアントと通信したい場合は
スレッドのような並列機構を使う必...

Socket.tcp_server_loop(port) {|sock,addr| ...} -> () (18643.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、
新しい接続を受け入れるごとにブロックを呼び出します。

ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。

ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。

このメソッドはブロックを逐次的に呼び出します。
つまりブロックからリターンするまで次のコネクションを受け入れません。
そのため、同時に複数のクライアントと通信したい場合は
スレッドのような並列機構を使う必...

Socket.udp_server_sockets(host, port) {|sockets| ... } -> object (18643.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Socket.udp_server_sockets(port) {|sockets| ... } -> object (18643.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

絞り込み条件を変える

Enumerable#reverse_each {|element| ... } -> self (18640.0)

逆順に各要素に対してブロックを評価します。

逆順に各要素に対してブロックを評価します。

内部で各要素を保持した配列を作ります。

ブロックを省略した場合は、各要素を逆順に辿る
Enumerator を返します。

//emlist[例][ruby]{
{a: 1, b: 2, c: 3}.reverse_each # => #<Enumerator: ...>
{a: 1, b: 2, c: 3}.reverse_each { |v| p v }
# => [:c, 3]
# [:b, 2]
# [:a, 1]
//}

Socket.udp_server_recv(sockets) {|msg, msg_src| ... } -> () (18640.0)

socketsで与えられた各 UDP ソケットからデータを読み取ります。

socketsで与えられた各 UDP ソケットからデータを読み取ります。

各ソケットからメッセージを読み取るごとにブロックを呼び出します。
ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

Socket.udp_server_loop はこのメソッドの用いて以下のようにして
実装できます。

require 'socket'

udp_server_sockets(host, port) {|sockets|
loop {
...

Array#reverse_each {|item| ... } -> self (18622.0)

各要素に対して逆順にブロックを評価します。

各要素に対して逆順にブロックを評価します。

ブロックが与えられなかった場合は、自身と reverse_each から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
a = [ "a", "b", "c" ]
a.reverse_each {|x| print x, " " }
# => c b a
//}

@see Array#each

Socket.unix_server_socket(path) {|sock| ... } -> object (18622.0)

Unix サーバソケットを生成します。

Unix サーバソケットを生成します。

ブロックが省略されたときは、生成されたソケットが返されます。

ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。

require 'socket'

socket = Socket.unix_server_socket("/tmp/s")
p socket #=> #<Socket:fd 3>
p socket.local_address #=> #<...

Socket.udp_server_loop(host, port) {|msg, msg_src| ... } -> () (18607.0)

UDP のサーバを起動して、メッセージが来るごとに ブロックを呼び出します。

UDP のサーバを起動して、メッセージが来るごとに
ブロックを呼び出します。

ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.udp_server_sockets, Socket.udp_server_loop_on

絞り込み条件を変える

Socket.udp_server_loop(port) {|msg, msg_src| ... } -> () (18607.0)

UDP のサーバを起動して、メッセージが来るごとに ブロックを呼び出します。

UDP のサーバを起動して、メッセージが来るごとに
ブロックを呼び出します。

ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

@param host 割り当てるホスト名
@param port 割り当てるポート番号
@see Socket.udp_server_sockets, Socket.udp_server_loop_on

Array.try_convert(obj) -> Array | nil (18604.0)

to_ary メソッドを用いて obj を配列に変換しようとします。

to_ary メソッドを用いて obj を配列に変換しようとします。

何らかの理由で変換できないときには nil を返します。
このメソッドは引数が配列であるかどうかを調べるために使えます。

//emlist[例][ruby]{
Array.try_convert([1]) # => [1]
Array.try_convert("1") # => nil

if tmp = Array.try_convert(arg)
# the argument is an array
elsif tmp = String.try_convert(arg)
# the argument ...

Gem::ConfigFile#verbose -> bool | Symbol (18604.0)

ログの出力レベルを返します。

ログの出力レベルを返します。

@see Gem::ConfigFile#verbose=

Hash.try_convert(obj) -> Hash | nil (18604.0)

to_hash メソッドを用いて obj をハッシュに変換しようとします。

to_hash メソッドを用いて obj をハッシュに変換しようとします。

何らかの理由で変換できないときには nil を返します。
このメソッドは引数がハッシュであるかどうかを調べるために使えます。

//emlist[][ruby]{
Hash.try_convert({1=>2}) # => {1=>2}
Hash.try_convert("1=>2") # => nil
//}

IO.try_convert(obj) -> IO | nil (18604.0)

obj を to_io メソッドによって IO オブジェクトに変換します。 変換できなかった場合は nil を返します。

obj を to_io メソッドによって IO オブジェクトに変換します。
変換できなかった場合は nil を返します。

IO.try_convert(STDOUT) # => STDOUT
IO.try_convert("STDOUT") # => nil

絞り込み条件を変える

IRB::Context#verbose -> bool | nil (18604.0)

標準出力に詳細なメッセージを出力するように設定されているかどうかを返し ます。

標準出力に詳細なメッセージを出力するように設定されているかどうかを返し
ます。

IRB::Context#verbose? とは別のメソッドである事に注意してください。

@return 詳細なメッセージを出力するように設定されている場合は true を返
します。そうでない場合は false か nil を返します。

@see IRB::Context#verbose?, IRB::Context#verbose=

IRB::Context#verbose? -> bool | nil (18604.0)

標準出力に詳細なメッセージを出力するかどうかを返します。

標準出力に詳細なメッセージを出力するかどうかを返します。

@return 詳細なメッセージを出力する場合は true を返します。そうでない場
合は false か nil を返します。

設定を行っていた場合(IRB::Context#verbose が true か false を返す
場合)は設定した通りに動作します。設定を行っていない場合は、ファイルを指
定して irb を実行した場合などに true を返します。


@see IRB::Context#verbose, IRB::Context#verbose=

Net::HTTP#verify_mode -> Integer | nil (18604.0)

検証モードを返します。

検証モードを返します。

デフォルトは nil です。

Net::POP3.verify -> Integer|nil (18604.0)

SSL のパラメータの verify_mode を返します。

SSL のパラメータの verify_mode を返します。

設定されていない場合は nil を返します。

@see OpenSSL::SSL::SSLContext#verify_mode

OpenSSL::ASN1.#traverse(der) {|depth, off, hlen, len, constructed, tag_class, tag| ...} -> nil (18604.0)

DER形式の文字列を解析し、そこに含まれる ASN.1 の値 のプロパティを引数として与えられたブロックを呼びだします。

DER形式の文字列を解析し、そこに含まれる ASN.1 の値
のプロパティを引数として与えられたブロックを呼びだします。

OpenSSL::ASN1.#decode_all のように、文字列に含まれる
全ての ASN.1 オブジェクトのインスタンスを解析します。

ブロックに渡される引数は以下の通りです。
* depth: 再帰の深さ
* off: 対象の値をエンコードした文字列の der の先頭からのオフセット
* hlen: エンコードされたデータのヘッダのバイト数
* len: エンコードされたデータの値フィールドのバイト数
* constructed:対象の AS...

絞り込み条件を変える

OpenSSL::SSL::SSLContext#servername_cb -> Proc | nil (18604.0)

TLS の Server Name Indication(SNI) 拡張で クライアント側からホスト名が伝えられてきた場合に 呼びだされるコールバックを返します。

TLS の Server Name Indication(SNI) 拡張で
クライアント側からホスト名が伝えられてきた場合に
呼びだされるコールバックを返します。

詳しくは OpenSSL::SSL::SSLContext#servername_cb= を見てください。

OpenSSL::SSL::SSLContext#verify_callback -> Proc | nil (18604.0)

オブジェクトに設定されている検証をフィルタするコールバックを 返します。

オブジェクトに設定されている検証をフィルタするコールバックを
返します。

デフォルトのコールバックが設定されている場合には nil を返します。

@see OpenSSL::X509::Store#verify_callback,
OpenSSL::SSL::SSLContext#verify_callback=

OpenSSL::SSL::SSLContext#verify_depth -> Integer | nil (18604.0)

証明書チェイン上の検証する最大の深さを返します。

証明書チェイン上の検証する最大の深さを返します。

デフォルトは nil です。

@see OpenSSL::SSL::SSLContext#verify_depth=

OpenSSL::SSL::SSLContext#verify_mode -> Integer | nil (18604.0)

検証モードを返します。

検証モードを返します。

デフォルトは nil です。

@see OpenSSL::SSL::SSLContext#verify_mode=

OpenSSL::X509::Store#verify(cert, chain = nil) {|ok, ctx| ... } -> bool (18604.0)

証明書を証明書ストアに存在する CA 証明書で検証します。

証明書を証明書ストアに存在する CA 証明書で検証します。

chain には検証したい証明書の証明書チェイン全体を
OpenSSL::X509::Certificate の配列で渡します。

検証に成功した場合は true を、失敗した場合は false を返します。

このメソッドをブロック付きで呼び出すと、そのブロックが
検証をフィルタするコールバックと見做されます。このコールバックについては
OpenSSL::X509::Store#verify_callback= を参照してください。

内部では OpenSSL::X509::StoreContext.new と
OpenSSL:...

絞り込み条件を変える

OpenSSL::X509::Store#verify_callback -> Proc | nil (18604.0)

オブジェクトに設定されている検証をフィルタするコールバックを 返します。

オブジェクトに設定されている検証をフィルタするコールバックを
返します。

デフォルトのコールバックが設定されている場合には nil を返します。

@see OpenSSL::X509::Store#verify_callback=

RDoc::Markup#convert(str, formatter) -> object | "" (18604.0)

str で指定された文字列を formatter に変換させます。

str で指定された文字列を formatter に変換させます。

@param str 変換する文字列を指定します。

@param formatter SM::ToHtml、SM::ToLaTeX などのインスタンス
を指定します。

変換結果は formatter によって文字列や配列を返します。

RDoc::Options#coverage_report -> Integer | false (18604.0)

コマンドライン引数の --coverage-report オプションを指定していた場合、指 定した数値を返します。

コマンドライン引数の --coverage-report オプションを指定していた場合、指
定した数値を返します。

指定しなかった場合は false を返します。

Regexp.try_convert(obj) -> Regexp | nil (18604.0)

obj を to_regexp メソッドで Regexp オブジェクトに変換しようと 試みます。

obj を to_regexp メソッドで Regexp オブジェクトに変換しようと
試みます。

変換に成功した場合はそれを返し、失敗時には nil を返します。

//emlist[例][ruby]{
Regexp.try_convert(/re/) # => /re/
Regexp.try_convert("re") # => nil
//}

Socket.udp_server_loop_on(sockets) {|msg, msg_src| ... } -> () (18604.0)

sockets (UDP のソケット)に対し、通信を待ち受けます。

sockets (UDP のソケット)に対し、通信を待ち受けます。

Socket.udp_server_sockets の返り値がこれの引数に適切です。

ソケットからメッセージを受け取るたびにブロックを呼び出します。
ブロックに渡される引数は msg と msg_src の 2 つで、
msg は受け取ったメッセージ文字列で、 msg_src は
通信相手の Socket::UDPSource オブジェクトです。

無限ループ構造になっています。

@param sockets 通信を待ち受けるソケットの配列
@see Socket.udp_server_recv, Socket.ud...

絞り込み条件を変える

Socket.unix_server_loop(path) {|socket, client_addrinfo| ... } -> () (18604.0)

Unix サーバソケットを生成し、 新しい接続を受け入れるごとにブロックを呼び出します。

Unix サーバソケットを生成し、
新しい接続を受け入れるごとにブロックを呼び出します。

ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。

ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。

path という名前のファイルが既に存在するときは、
そのファイルのオーナである場合は先にそのファイルを削除してしまいます。
これは path が悪意あるユーザによって変更されない場合に限りは安全です。
つまり、 /tmp/malicious-us...

String.try_convert(obj) -> String | nil (18604.0)

obj を String に変換しようと試みます。変換には Object#to_str メソッ ドが使われます。変換後の文字列を返すか、何らかの理由により変換できなかっ た場合は nil が返されます。

obj を String に変換しようと試みます。変換には Object#to_str メソッ
ドが使われます。変換後の文字列を返すか、何らかの理由により変換できなかっ
た場合は nil が返されます。

@param obj 変換する任意のオブジェクト
@return 変換後の文字列または nil

//emlist[例][ruby]{
String.try_convert("str") # => "str"
String.try_convert(/re/) # => nil
//}

Socket.tcp_server_sockets(host, port) -> [Socket] (18361.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

Socket.tcp_server_sockets(port) -> [Socket] (18361.0)

TCP/IP で host:port で待ち受けるサーバ側のソケットを 作成します。

TCP/IP で host:port で待ち受けるサーバ側のソケットを
作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。
返り値はブロックの評価値となります。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

require 'socket'

# tcp_server_sockets returns は2つのソケットを返す
sockets = Socke...

CSV#convert(name) (18343.0)

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。

引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。

ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
...

絞り込み条件を変える

CSV#header_convert(name) (18343.0)

CSV#convert に似ていますが、ヘッダ行用のメソッドです。

CSV#convert に似ていますが、ヘッダ行用のメソッドです。

このメソッドはヘッダ行を読み込む前に呼び出さなければなりません。

@param name 変換器の名前を指定します。

//emlist[例 name を指定][ruby]{
require "csv"

csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv.header_convert(:symbol)
csv.first.headers # => [:header1, :header2]
//}

//emlist[例 ブロックを指定][...

Socket.udp_server_sockets(host, port) -> [Sockets] (18343.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Socket.udp_server_sockets(port) -> [Sockets] (18343.0)

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

UDP で host:port を待ち受けるサーバ側のソケットを作成します。

ブロックなしの場合は、ソケットオブジェクトの配列を返します。

ブロック付きの場合は、ソケットオブジェクトをそのブロックに
渡して呼び出します。ブロック終了時にそれらのソケットを閉じます。

port が 0 の場合は、実際のポート番号は動的に選ばれます。
ただし返り値のソケットはすべて同じ番号を持ちます。

# UDP/IP echo server
require 'socket'

Socket.udp_server_sockets(0) {|sockets|
p sockets.firs...

Enumerable#reverse_each -> Enumerator (18340.0)

逆順に各要素に対してブロックを評価します。

逆順に各要素に対してブロックを評価します。

内部で各要素を保持した配列を作ります。

ブロックを省略した場合は、各要素を逆順に辿る
Enumerator を返します。

//emlist[例][ruby]{
{a: 1, b: 2, c: 3}.reverse_each # => #<Enumerator: ...>
{a: 1, b: 2, c: 3}.reverse_each { |v| p v }
# => [:c, 3]
# [:b, 2]
# [:a, 1]
//}

BasicSocket#do_not_reverse_lookup -> bool (18337.0)

ソケットごとのアドレスからホスト名への逆引きの設定を返します。

ソケットごとのアドレスからホスト名への逆引きの設定を返します。

真ならアドレスからホスト名への逆引きを行いません。

初期値はソケットを生成したときの
BasicSocket.do_not_reverse_lookup の値になります。

require 'socket'

BasicSocket.do_not_reverse_lookup = false
TCPSocket.open("www.ruby-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => false
}
BasicSock...

絞り込み条件を変える

Hash#invert -> Hash (18337.0)

値からキーへのハッシュを作成して返します。

値からキーへのハッシュを作成して返します。

異なるキーに対して等しい値が登録されている場合、最後に定義されている値が使用されます。

//emlist[例][ruby]{
h = { "a" => 0, "b" => 100, "c" => 200, "d" => 300, "e" => 300 }
p h.invert #=> {0=>"a", 100=>"b", 200=>"c", 300=>"e"}
//}

=== 参考
値が重複していたときに備えて、変換後の値を配列として保持するには、次のようにします。

//emlist[][ruby]{
def safe_invert(o...

RakeFileUtils.verbose_flag -> bool (18337.0)

この値が真の場合、詳細を表示します。

この値が真の場合、詳細を表示します。

//emlist[][ruby]{
# Rakefile での記載例とする

task default: :sample_file_task

file :sample_file_task do |t|
# --verbose で rake を実行する
RakeFileUtils.verbose_flag # => true
end
//}

RakeFileUtils.verbose_flag=(flag) (18337.0)

詳細を表示するかどうか設定します。

詳細を表示するかどうか設定します。

@param flag 詳細を表示するかどうか指定します。真を指定すると詳細を表示します。


//emlist[][ruby]{
# Rakefile での記載例とする

task default: :sample_file_task

file :sample_file_task do |t|
# --verbose で rake を実行する
p RakeFileUtils.verbose_flag # => true
RakeFileUtils.verbose_flag = false
p RakeFileUtils.verbose...

Array#reverse_each -> Enumerator (18322.0)

各要素に対して逆順にブロックを評価します。

各要素に対して逆順にブロックを評価します。

ブロックが与えられなかった場合は、自身と reverse_each から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
a = [ "a", "b", "c" ]
a.reverse_each {|x| print x, " " }
# => c b a
//}

@see Array#each

Socket.unix_server_socket(path) -> Socket (18322.0)

Unix サーバソケットを生成します。

Unix サーバソケットを生成します。

ブロックが省略されたときは、生成されたソケットが返されます。

ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。

require 'socket'

socket = Socket.unix_server_socket("/tmp/s")
p socket #=> #<Socket:fd 3>
p socket.local_address #=> #<...

絞り込み条件を変える

OpenSSL::SSL::SSLContext#servername_cb=(pr) (18319.0)

TLS の Server Name Indication(SNI) 拡張で クライアント側からホスト名が伝えられてきた場合に 呼びだされるコールバックを設定します。

TLS の Server Name Indication(SNI) 拡張で
クライアント側からホスト名が伝えられてきた場合に
呼びだされるコールバックを設定します。

このコールバックはハンドシェイク時に
クライアント側がサーバのホスト名を伝えてきた場合に
サーバ側で呼びだされます。このコールバック内でサーバ側に提示する証明書を
調整したりします。

Proc や Method をコールバックオブジェクトとして
渡します。コールバックに渡される引数は以下のように
proc{|sslsocket, hostname| ... }
2つで、1つ目は認証および暗号化通信に使われる OpenSSL...

OpenSSL::X509::Store#verify_callback=(proc) (18319.0)

検証をフィルタするコールバックを設定します。

検証をフィルタするコールバックを設定します。

コールバックには Proc や Method を渡します。

渡されたコールバックオブジェクトは証明書チェインの検証時に
チェインに含まれる各証明書の署名を検証するたびに呼びだされます。
そのときに渡される引数は以下のように
proc{|ok, ctx| ... }
2つで、1つめは検証が成功したかの真偽値、
2つめは検証後の状態を保存した
OpenSSL::X509::StoreContext オブジェクトです。
このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト
を調べることで詳細なエラー情報を得ることです。2つ目...

OpenSSL::X509::Store#verify(cert, chain = nil) -> bool (18304.0)

証明書を証明書ストアに存在する CA 証明書で検証します。

証明書を証明書ストアに存在する CA 証明書で検証します。

chain には検証したい証明書の証明書チェイン全体を
OpenSSL::X509::Certificate の配列で渡します。

検証に成功した場合は true を、失敗した場合は false を返します。

このメソッドをブロック付きで呼び出すと、そのブロックが
検証をフィルタするコールバックと見做されます。このコールバックについては
OpenSSL::X509::Store#verify_callback= を参照してください。

内部では OpenSSL::X509::StoreContext.new と
OpenSSL:...

Gem::Version (18037.0)

文字列で表現されたバージョンを比較可能 (Comparable) にするためのクラスです。

文字列で表現されたバージョンを比較可能 (Comparable) にするためのクラスです。

バージョンを文字列で表したとき、単純に String#<=> で比較すると、
"1.9" のほうが "1.10" よりも大きい(バージョンが高い)ことになってしまい、
正しく判定できません。
Gem::Version はこの問題を解決します。

//emlist[文字列での比較と Gem::Version での比較][ruby]{
p "1.9" < "1.10" # => false
p Gem::Version.new("1.9") < Gem::Version.new("1.10") # => ...

TCPServer (18037.0)

TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。

TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。

このクラスによって簡単にソケットを利用したサーバのプログラミングができます。

例えば echo サーバは以下のようになります。

require "socket"

gs = TCPServer.open(0)
socks = [gs]
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))

while true
nsock = select(socks)
next if nsock ==...

絞り込み条件を変える

coverage (18037.0)

カバレッジを測定するためのライブラリです。

カバレッジを測定するためのライブラリです。

=== 基本的な使い方

以下のようにして測定を行います。

(1) require "coverage" で、ライブラリを読み込む。
(2) Coverage.start を実行し、測定を開始する。
(3) require や load で測定対象のファイルを実行する。
(4) Coverage.result や Coverage.peek_result で結果を確認する。

Coverage.result は、ファイル名をキーとし、カバレッジ測定結果を値とするハッシュを返します。

==== 簡単な例

まず測定対象のソースを用...

Gem::Version#<=>(other) -> -1 | 0 | 1 | nil (9910.0)

self と other を比較して、self が小さい時に -1、 等しい時に 0、大きい時に 1 の整数を返します。 また、other が Gem::Version ではなく比較できないとき、 nil を返します。

self と other を比較して、self が小さい時に -1、
等しい時に 0、大きい時に 1 の整数を返します。
また、other が Gem::Version ではなく比較できないとき、 nil を返します。

//emlist[][ruby]{
p Gem::Version.new("3.9.0") <=> Gem::Version.new("3.10.0") # => -1
p Gem::Version.new("3.0.0") <=> Gem::Version.new("3.0.0") # => 0
p Gem::Version.new("3.0.0") <=> G...

WEBrick::HTTPVersion#<=>(other) -> -1 | 0 | 1 | nil (9910.0)

自身と指定された other のバージョンを比較します。 自身が other より新しいなら 1、同じなら 0、古いなら -1 を返します。 比較できない場合に nil を返します。

自身と指定された other のバージョンを比較します。
自身が other より新しいなら 1、同じなら 0、古いなら -1 を返します。
比較できない場合に nil を返します。

@param other HTTP のバージョンを表す WEBrick::HTTPVersion オブジェクトか文字列を指定します。

require 'webrick'
v = WEBrick::HTTPVersion.new('1.1')
p v < '1.0' #=> false

Gem::Version.create(input) -> Gem::Version | nil (9676.0)

Gem::Version のインスタンスを作成するためのファクトリメソッドです。

Gem::Version のインスタンスを作成するためのファクトリメソッドです。

//emlist[][ruby]{
ver1 = Gem::Version.create('1.3.17') # => #<Gem::Version "1.3.17">
ver2 = Gem::Version.create(ver1) # => #<Gem::Version "1.3.17">
ver3 = Gem::Version.create(nil) # => nil
//}

@param input Gem::Version のインスタンスか文字列を指定します。

@r...

Kernel$$VERBOSE -> bool | nil (9610.0)

冗長メッセージフラグです。Rubyインタプリタへの コマンドラインオプション -v でセットされます。

冗長メッセージフラグです。Rubyインタプリタへの
コマンドラインオプション -v でセットされます。

警告レベルは三段階あり、それぞれ以下の通りです。

: nil
警告を出力しない
: false
重要な警告のみ出力 (デフォルト)
: true
すべての警告を出力する

$VERBOSE に nil, false 以外を代入すると値は true になります。

$VERBOSE の値はコマンドラインオプション
-W でも設定できます。
-W0 オプションで nil、
-W1 オプションで false、
-W2, -W オプションで true が設定されます。
-...

絞り込み条件を変える

Gem::Version.correct?(version) -> 0 | nil (9604.0)

version が正しいバージョンであれば 0 を返します。そうでなければ nil を返します。

version が正しいバージョンであれば 0 を返します。そうでなければ nil を返します。

//emlist[][ruby]{
p Gem::Version.correct?("9.1") # => 0
p Gem::Version.correct?("incorrect") # => nil

p Gem::Version.correct?(nil) # => 0
//}

@param version バージョンを文字列か数値で指定します。

WEBrick::HTTPProxyServer.new(config, default = WEBrick::Config::HTTP) -> WEBrick::HTTPProxyServer (9337.0)

プロクシオブジェクトを生成して返します。

プロクシオブジェクトを生成して返します。

@param config 設定を保存したハッシュを指定します。
設定として有効なハッシュのキーとその値は WEBrick::HTTPServer.new と同じです。
それに加えて以下のキーが有効です。

: :ProxyAuthProc
プロクシ認証を行う Proc オブジェクトを指定します。この proc は
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest オブジェクトを引数として
proc.call(req, res) ...

Encoding::Converter.asciicompat_encoding(encoding) -> Encoding | nil (9307.0)

同じ文字集合を持つ ASCII 互換エンコーディングを返します。

同じ文字集合を持つ ASCII 互換エンコーディングを返します。

@param string エンコーディング名
@param encoding エンコーディングオブジェクト
@return ASCII 互換エンコーディングのオブジェクトか nil

引数とエンコーディングと同じ文字集合を持つ ASCII 互換エンコーディングを返します。引数と戻り値、2 つのエンコーディング間では変換しても未定義文字の例外は発生しません。
引数が ASCII 互換エンコーディングである場合や、エンコーディングでない場合は nil を返します。

//emlist[][ruby]{
Encoding::Con...

Encoding::Converter.asciicompat_encoding(string) -> Encoding | nil (9307.0)

同じ文字集合を持つ ASCII 互換エンコーディングを返します。

同じ文字集合を持つ ASCII 互換エンコーディングを返します。

@param string エンコーディング名
@param encoding エンコーディングオブジェクト
@return ASCII 互換エンコーディングのオブジェクトか nil

引数とエンコーディングと同じ文字集合を持つ ASCII 互換エンコーディングを返します。引数と戻り値、2 つのエンコーディング間では変換しても未定義文字の例外は発生しません。
引数が ASCII 互換エンコーディングである場合や、エンコーディングでない場合は nil を返します。

//emlist[][ruby]{
Encoding::Con...

UNIXServer.new(path) -> UNIXServer (9307.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

絞り込み条件を変える

UNIXServer.new(path) {|sock| ...} -> object (9307.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

UNIXServer.open(path) -> UNIXServer (9307.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

UNIXServer.open(path) {|sock| ...} -> object (9307.0)

path で指定したパス名を用いて接続を受け付けるソケット を作成します。

path で指定したパス名を用いて接続を受け付けるソケット
を作成します。

ブロックを省略すると作成したサーバソケットを返します。

ブロックを渡した場合は、作成したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。

@param path 接続を受け付けるパス名文字列

require 'socket'

serv = UNIXServer.new("/tmp/sock")
s = serv.accept
p s.read

DRb::DRbServer#uri -> String|nil (9304.0)

サーバに紐付けられた URI を返します。

サーバに紐付けられた URI を返します。

Encoding::Converter#last_error -> Exception | nil (9304.0)

直前に変換器で発生した例外に相当する例外オブジェクトを返します。 直前の変換で例外が発生していない場合は nil を返します。

直前に変換器で発生した例外に相当する例外オブジェクトを返します。
直前の変換で例外が発生していない場合は nil を返します。

//emlist[][ruby]{
ec = Encoding::Converter.new("utf-8", "iso-8859-1")
p ec.primitive_convert(src="\xf1abcd", dst="") #=> :invalid_byte_sequence
p ec.last_error #=> #<Encoding::InvalidByteSequenceError: "\xF1" followed by "a"...

絞り込み条件を変える

WEBrick::GenericServer#ssl_context -> OpenSSL::SSL::SSLContext | nil (9304.0)

サーバが保持する OpenSSL::SSL::SSLContext オブジェクトを返します。

サーバが保持する OpenSSL::SSL::SSLContext オブジェクトを返します。

WEBrick::GenericServer#start {|soc| ... } -> () (9304.0)

サーバをスタートします。

サーバをスタートします。

ブロックが与えられた場合 WEBrick::GenericServer#run メソッドの
代わりにブロックが実際のクライアントとの応答を担います。
ブロックは TCPSocket オブジェクトを引数として呼ばれます。

WEBrick::HTTPServer#mount_proc(dir) {|req, res| ...} -> () (9304.0)

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

@param dir ディレクトリをあらわす文字列を指定します。

@param proc リクエストを処理する Proc オブジェクトを指定します。
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest
オブジェクトを引数として proc.call(request, response) の引数の順で呼び出されます。

@raise WEBrick::HTTPServerError pr...

TCPServer#accept -> TCPSocket (9019.0)

クライアントからの接続要求を受け付け、接続した TCPSocket のインスタンスを返します。

クライアントからの接続要求を受け付け、接続した
TCPSocket のインスタンスを返します。

例:

require 'socket'

TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
s = serv.accept
c.write "foo"
p s.recv(10) #=> "foo"
}

TCPServer#sysaccept -> Integer (9019.0)

接続したクライアントのソケットをファイル記述子で返すことを除けば TCPServer#accept と同じです。

接続したクライアントのソケットをファイル記述子で返すことを除けば
TCPServer#accept と同じです。

例:

require 'socket'

TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
p serv.sysaccept #=> 6
}

絞り込み条件を変える

UNIXServer#accept -> UnixSocket (9019.0)

クライアントからの接続要求を accept(2)で待ち受け、接続した UNIXSocket のインスタンスを返します。

クライアントからの接続要求を accept(2)で待ち受け、接続した
UNIXSocket のインスタンスを返します。

例:

require 'socket'

UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.write "from server"
c.write "from client"
p c.recv(20) #=> "from server"
p s.recv(20) #=> "from clie...

UNIXServer#sysaccept -> Integer (9019.0)

接続したクライアントのソケットをファイル記述子で返すことを除けば UNIXServer#accept と同じです。

接続したクライアントのソケットをファイル記述子で返すことを除けば
UNIXServer#accept と同じです。

例:

require 'socket'

UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p serv.sysaccept #=> 6
}

WEBrick::GenericServer#start -> () (9004.0)

サーバをスタートします。

サーバをスタートします。

ブロックが与えられた場合 WEBrick::GenericServer#run メソッドの
代わりにブロックが実際のクライアントとの応答を担います。
ブロックは TCPSocket オブジェクトを引数として呼ばれます。

WEBrick::HTTPServer#mount_proc(dir, proc) -> () (9004.0)

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

@param dir ディレクトリをあらわす文字列を指定します。

@param proc リクエストを処理する Proc オブジェクトを指定します。
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest
オブジェクトを引数として proc.call(request, response) の引数の順で呼び出されます。

@raise WEBrick::HTTPServerError pr...

Gem::StreamUI#progress_reporter(*args) -> SilentProgressReporter | SimpleProgressReporter | VerboseProgressReporter (907.0)

処理の進捗を報告するためのオブジェクトを返します。

処理の進捗を報告するためのオブジェクトを返します。

返されるオブジェクトの種類は現在の設定によります。

@param args 返値となるオブジェクトを初期化するための引数です。

@see Gem::StreamUI::SilentProgressReporter, Gem::StreamUI::SimpleProgressReporter, Gem::StreamUI::VerboseProgressReporter

絞り込み条件を変える

Rake::PackageTask.new(name = nil, version = nil) {|t| ... } -> Rake::PackageTask (640.0)

自身を初期化してタスクを定義します。

自身を初期化してタスクを定義します。

ブロックが与えられた場合は、自身をブロックパラメータとして
ブロックを評価します。

@param name パッケージ名を指定します。

@param version パッケージのバージョンを指定します。
':noversion' というシンボルを指定するとバージョン情報をセットしません。

//emlist[][ruby]{
# Rakefile での記載例とする
require 'rake/packagetask'

Rake::PackageTask.new("sample", "1.0.0") do |packa...

Gem::Commands::UnpackCommand#get_path(gemname, version_req) -> String | nil (604.0)

引数で指定された条件にマッチする Gem パッケージを保存しているパスを返します。

引数で指定された条件にマッチする Gem パッケージを保存しているパスを返します。

@param gemname Gem パッケージの名前を指定します。

@param version_req バージョンの満たすべき条件を文字列で指定します。

ruby 1.6 feature (505.0)

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

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

((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。

== 1.6.8 (2002-12-24) -> stable-snapshot

: 2003-01-22: errno

EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま...

rdoc (109.0)

RDoc は Ruby のドキュメント生成を行うためのライブラリです。rdoc という ドキュメント生成のためのコマンドも含んでいます。

RDoc は Ruby のドキュメント生成を行うためのライブラリです。rdoc という
ドキュメント生成のためのコマンドも含んでいます。

このパッケージは RDoc と Markup というふたつのコンポーネントを含
んでいます。 RDoc とは Ruby のソースファイルに対するドキュメントを生成
するアプリケーションです。 JavaDoc と同様に、ソースを解析し、クラス、モ
ジュール、メソッドの定義を抜き出してきます(include,require もです)。そ
してこれらの内容とその直前に書かれたコメントを併合し、ドキュメントを出
力します(現在は HTML しか出力できませんが、こ...

WIN32OLE#ole_query_interface(iid) -> WIN32OLE (73.0)

IID(インターフェイスID)を指定してオブジェクトの別のインターフェイスを 持つオブジェクトを取得します。

IID(インターフェイスID)を指定してオブジェクトの別のインターフェイスを
持つオブジェクトを取得します。

オブジェクトが複数のオートメーション用インターフェイスを持つ場合に、当
メソッドを利用して既定のインターフェイスとは異なるインターフェイスを取
得します。

@param iid 取得するインターフェイスのIIDを文字列で指定します。
@return iidパラメータで指定したインターフェイスを持つWIN32OLEオブジェクト
@raise WIN32OLERuntimeError 指定したIIDをオブジェクトが持たない場合に通知されます。

ie = WIN32OLE.n...

絞り込み条件を変える

getoptlong (73.0)

getoptlong は、GNU の getopt_long() とまったく同じ方式でコマンド 行オプションの解析を行う Ruby のライブラリです。

getoptlong は、GNU の getopt_long() とまったく同じ方式でコマンド
行オプションの解析を行う Ruby のライブラリです。


=== GNU getopt_long() とは?

GNU getopt_long() は、コマンド行オプションの解析を行う C の関数です。多
くの GNU ソフトウェアがこの関数を使用しています。GNU getopt_long() そし
て getoptlong には、以下のような特徴があります。

* 伝統的な一文字オプションに加えて、長いオプションに対応しています。長
いオプションは `-' の代わりに `--' で始まり...

OptionParser (55.0)

コマンドラインのオプションを取り扱うためのクラスです。

コマンドラインのオプションを取り扱うためのクラスです。

オプションが指定された時に呼ばれるブロックを
OptionParser#on メソッドで登録していきます。
つまり、OptionParser を使う場合、基本的には

(1) OptionParser オブジェクト opt を生成する。
(2) オプションを取り扱うブロックを opt に登録する。
(3) opt.parse(ARGV) でコマンドラインを実際に parse する。

というような流れになります。

//emlist[][ruby]{
require "optparse"
ProgramConfig = Ha...