別のキーワード
ライブラリ
クラス
- Addrinfo (1)
- CSV (4)
-
CSV
:: Table (2) - ERB (2)
- GDBM (2)
-
Net
:: POPMail (3) - Object (1)
-
OpenSSL
:: BN (1) - PrettyPrint (1)
- Socket (1)
- StringIO (2)
-
WEBrick
:: HTTPResponse (5) -
Zlib
:: GzipReader (5) -
Zlib
:: GzipWriter (4)
キーワード
- ConditionVariable (1)
- DATA (1)
- Forwardable (1)
- GzipReader (1)
-
MAKEFILE
_ CONFIG (1) - NKF (1)
- Observable (1)
- Rubyの起動 (1)
- all (1)
- bigdecimal (1)
- body= (1)
- chunked= (1)
-
connect
_ from (1) -
content
_ length (1) -
content
_ length= (1) -
def
_ class (1) -
def
_ module (1) - each (2)
-
force
_ quotes? (1) - format (1)
- instance (1)
- irb (1)
- mail (1)
-
net
/ http (1) - open (6)
- pop (1)
- pos (1)
-
pretty
_ print (1) - prettyprint (1)
- printf (2)
-
ruby 1
. 6 feature (1) - tcp (1)
- tell (1)
- timeout (2)
-
to
_ s (1) - ungetc (1)
- wrap (2)
- 制御構造 (1)
検索結果
先頭5件
-
bigdecimal (78739.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
bigdecimal は浮動小数点数演算ライブラリです。
任意の精度で 10 進表現された浮動小数点数を扱えます。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("0.123456789123456789")
b = BigDecimal("123456.78912345678", 40)
print a + b # => 0.123456912580245903456789e6
//}
一般的な 10 進数の計算でも有用です。2 進数の浮動小数点演算には微小な誤
差があるのに対し、BigDecimal では正確な値を得る事がで... -
Zlib
:: GzipWriter # print(*str) -> nil (63376.0) -
引数を自身に順に出力します。引数を省略した場合は、$_ を出力します。
引数を自身に順に出力します。引数を省略した場合は、$_ を出力します。
@param str 出力するオブジェクトを指定します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.print "ugo"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}... -
StringIO
# print(*obj) -> nil (54691.0) -
自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。 引数の扱いは Kernel.#print を参照して下さい。
自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。
引数の扱いは Kernel.#print を参照して下さい。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.print("hoge", "bar", "foo")
a.string #=> "hogebarfoo"
//} -
Zlib
:: GzipWriter # printf(format , *args) -> nil (27337.0) -
C 言語の printf と同じように、format に従い引数 を文字列に変換して、自身に出力します。
C 言語の printf と同じように、format に従い引数
を文字列に変換して、自身に出力します。
@param format フォーマット文字列を指定します。print_format を参照してください。
@param args フォーマットされるオブジェクトを指定します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.printf("\n%9s", "b... -
OpenSSL
:: BN # pretty _ print(pp) (27322.0) -
Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。
Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。
//emlist[][ruby]{
require 'openssl'
pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}
@param pp PP クラスのインスタンスオブジェクト -
StringIO
# printf(format , *obj) -> nil (18619.0) -
指定されたフォーマットに従い各引数 obj を文字列に変換して、自身に出力します。
指定されたフォーマットに従い各引数 obj を文字列に変換して、自身に出力します。
@param format 文字列のフォーマットを指定します。Kernel.#format を参照して下さい。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.printf("%c%c%c", 97, 98, 99)
a.string ... -
WEBrick
:: HTTPResponse # body=(val) (18337.0) -
クライアントに返す内容(エンティティボディ)をセットします。
クライアントに返す内容(エンティティボディ)をセットします。
自身が chunked であっても body の値はチャンク形式ではありません。
@param val メッセージボディを文字列か IO オブジェクトで指定します。
自身が chunked であってもチャンク形式にする必要はありません。
適切にチャンク形式エンコーディングされます。
require 'webrick'
include WEBrick
res = HTTPResponse.new( { :HTTPVersion => "1.1" } )
res.bod... -
irb (18181.0)
-
irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
irb は Interactive Ruby の略です。
irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
=== irb の使い方
Ruby さえ知っていれば irb を使うのは簡単です。
irb コマンドを実行すると、以下のようなプロンプトが表れます。
$ irb
irb(main):001:0>
あとは Ruby の式を入力するだけで、その式が実行され、結果が表示されます。
irb(main):001:0> 1+2
3
irb(main):002:0> class Foo
irb(main):003:1> def f... -
Thread
:: ConditionVariable (18091.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
スレッドの同期機構の一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ... -
Observable (18073.0)
-
Observer パターンを提供するモジュールです。
Observer パターンを提供するモジュールです。
Mix-in により Observer パターンを提供します。
Observable モジュールを include したクラスは
Observable#changed メソッドにより更新フラグを立て、
Observable#notify_observers が呼び出されると
更新フラグが立っている場合はオブザーバに通知します
(オブザーバの update メソッドを呼び出す)。
Observable#notify_observers の引数は
そのままオブザーバの update メソッドに渡されます。
=== サンプルコード
re... -
Rubyの起動 (18055.0)
-
Rubyの起動 * cmd_option * shebang
Rubyの起動
* cmd_option
* shebang
Rubyインタプリタの起動は以下の書式のコマンドラインにより行います。
ruby [ option ...] [ -- ] [ programfile ] [ argument ...]
ここで、option は後述のcmd_option
のいずれかを指定します。-- は、オプション列の終りを明示するため
に使用できます。programfile は、Ruby スクリプトを記述したファイ
ルです。これを省略したり`-' を指定した場合には標準入力を Ruby ス
クリプトとみなします。
programfile が... -
prettyprint (18055.0)
-
pretty printing アルゴリズムのためのライブラリです。
pretty printing アルゴリズムのためのライブラリです。
=== 使い方
pretty printing アルゴリズムは読みやすいインデントと改行を決定するためのアルゴリズムです。
インデントと改行はユーザによって与えられたツリー構造から決定されます。
つまりユーザは以下のように表示したい内容を保持したツリーを作成する必要があります。
* PrettyPrint.new でバッファを生成します。このとき、バッファの幅と改行文字を指定します。
* PrettyPrint#text を使って、文字列を適宜 挿入します。
* PrettyPrint#group を使って子ノー... -
Forwardable (18037.0)
-
クラスに対し、メソッドの委譲機能を定義するモジュールです。
クラスに対し、メソッドの委譲機能を定義するモジュールです。
=== 使い方
クラスに対して Object#extend して使います。Module#include でないところに注意して下さい。
例:
require 'forwardable'
class Foo
extend Forwardable
def_delegators("@out", "printf", "print")
def_delegators(:@in, :gets)
def_delegator(:@contents, :[], "content_at")
en... -
ruby 1
. 6 feature (9703.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 がなくなっ
ていま... -
Zlib
:: GzipReader . wrap(io) -> Zlib :: GzipReader (9355.0) -
io と関連付けられた GzipReader オブジェクトを作成します。
io と関連付けられた GzipReader オブジェクトを作成します。
ブロックが与えられた場合は、それを引数としてブロックを実行します。
ブロックの実行が終了すると、GzipReader オブジェクトは自動的に
クローズされます。関連付けられている IO オブジェクトまで
クローズしたくない時は、ブロック中で Zlib::GzipFile#finish
メソッドを呼び出して下さい。
@param io IO オブジェクトを指定します。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.o... -
Zlib
:: GzipReader . wrap(io) {|gz| . . . } -> object (9355.0) -
io と関連付けられた GzipReader オブジェクトを作成します。
io と関連付けられた GzipReader オブジェクトを作成します。
ブロックが与えられた場合は、それを引数としてブロックを実行します。
ブロックの実行が終了すると、GzipReader オブジェクトは自動的に
クローズされます。関連付けられている IO オブジェクトまで
クローズしたくない時は、ブロック中で Zlib::GzipFile#finish
メソッドを呼び出して下さい。
@param io IO オブジェクトを指定します。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.o... -
ERB
# def _ class(superklass=Object , methodname=& # 39;erb& # 39;) -> Class (9337.0) -
変換した Ruby スクリプトをメソッドとして定義した無名のクラスを返します。
変換した Ruby スクリプトをメソッドとして定義した無名のクラスを返します。
@param superklass 無名クラスのスーパークラス
@param methodname メソッド名
//emlist[例][ruby]{
require 'erb'
class MyClass_
def initialize(arg1, arg2)
@arg1 = arg1; @arg2 = arg2
end
end
filename = 'example.rhtml' # @arg1 と @arg2 が使われている example.rhtml
erb = ERB.n... -
ERB
# def _ module(methodname=& # 39;erb& # 39;) -> Module (9337.0) -
変換した Ruby スクリプトをメソッドとして定義した無名のモジュールを返します。
変換した Ruby スクリプトをメソッドとして定義した無名のモジュールを返します。
@param methodname メソッド名
//emlist[例][ruby]{
require 'erb'
filename = 'example.rhtml'
erb = ERB.new("test1<%= arg1 %>\ntest2<%= arg2 %>\n")
erb.filename = filename
MyModule = erb.def_module('render(arg1, arg2)')
class MyClass
include MyModule
end
print My... -
GDBM
. open(dbname , mode = 0666 , flags = 0) -> GDBM (9337.0) -
dbname で指定したデータベースをモードを mode に設定してオープンします。
dbname で指定したデータベースをモードを mode に設定してオープンします。
ブロックを指定した場合、オープンした GDBM オブジェクトを
引数にブロックを実行します。実行後 GDBM オブジェクトをクローズ
し、open メソッドはブロックの結果を返します。
@param dbname データベースの名前を指定します。
@param mode 省略値は 0666 です。mode として nil を指定するとデータベースが
存在しない時には新たなデータベースを作らず nil を返します。
@param flags flags には、GDBM::FAS... -
GDBM
. open(dbname , mode = 0666 , flags = 0) {|db| . . . } -> object (9337.0) -
dbname で指定したデータベースをモードを mode に設定してオープンします。
dbname で指定したデータベースをモードを mode に設定してオープンします。
ブロックを指定した場合、オープンした GDBM オブジェクトを
引数にブロックを実行します。実行後 GDBM オブジェクトをクローズ
し、open メソッドはブロックの結果を返します。
@param dbname データベースの名前を指定します。
@param mode 省略値は 0666 です。mode として nil を指定するとデータベースが
存在しない時には新たなデータベースを作らず nil を返します。
@param flags flags には、GDBM::FAS... -
Zlib
:: GzipReader . open(filename) -> Zlib :: GzipReader (9337.0) -
filename で指定されるファイルを gzip ファイルとして オープンします。GzipReader オブジェクトを返します。 その他詳細は Zlib::GzipReader.new や Zlib::GzipReader.wrap と 同じです。
filename で指定されるファイルを gzip ファイルとして
オープンします。GzipReader オブジェクトを返します。
その他詳細は Zlib::GzipReader.new や Zlib::GzipReader.wrap と
同じです。
@param filename gzip ファイル名を文字列で指定します。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
=end
Zlib... -
Zlib
:: GzipReader . open(filename) {|gz| . . . } -> object (9337.0) -
filename で指定されるファイルを gzip ファイルとして オープンします。GzipReader オブジェクトを返します。 その他詳細は Zlib::GzipReader.new や Zlib::GzipReader.wrap と 同じです。
filename で指定されるファイルを gzip ファイルとして
オープンします。GzipReader オブジェクトを返します。
その他詳細は Zlib::GzipReader.new や Zlib::GzipReader.wrap と
同じです。
@param filename gzip ファイル名を文字列で指定します。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
=end
Zlib... -
PrettyPrint
. format(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n" , genspace = lambda{|n| & # 39; & # 39; * n}) {|pp| . . . } -> object (9319.0) -
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。 与えられた output を返します。
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。
与えられた output を返します。
以下と同じ働きをするもので簡便のために用意されています。
//emlist[][ruby]{
require 'prettyprint'
begin
pp = PrettyPrint.new(output, maxwidth, newline, &genspace)
...
pp.flush
output
end
//}
@param output 出力先を指定します。output は << メソッドを持っていなければなりません。
@param... -
Object
:: DATA -> File (9127.0) -
スクリプトの __END__ プログラムの終り以降をアクセスする File オブジェクト。
スクリプトの __END__
プログラムの終り以降をアクセスする File オブジェクト。
d:spec/program#terminateも参照。
ソースファイルの __END__ 以降は解析・実行の対象にならないので
その部分にプログラムが利用するためのデータを書き込んでおくことができます。
DATA 定数はそのデータ部分にアクセスするための File オブジェクトを保持しています。
__END__ を含まないプログラムにおいては DATA は定義されません。
=== 注意
* DATA.rewind で移動する読みとり位置は __END__ 直後ではなく、
... -
CSV
:: Table # each {|column _ name , values| . . . } -> self (9055.0) -
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し ます。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//emlist[例 ロウモード][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
row3 = CSV::Row.new(["header1", "header2"], ["row3... -
CSV
:: Table # each {|row| . . . } -> self (9055.0) -
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し ます。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//emlist[例 ロウモード][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
row3 = CSV::Row.new(["header1", "header2"], ["row3... -
RbConfig
:: MAKEFILE _ CONFIG -> Hash (9055.0) -
RbConfig::CONFIG と同じですが、その値は以下のような形 で他の変数への参照を含みます。 MAKEFILE_CONFIG["bindir"] = "$(exec_prefix)/bin" これは、Makefile の変数参照の形式で MAKEFILE_CONFIG は、 Makefile 作成の際に利用されることを想定しています。
RbConfig::CONFIG
と同じですが、その値は以下のような形
で他の変数への参照を含みます。
MAKEFILE_CONFIG["bindir"] = "$(exec_prefix)/bin"
これは、Makefile の変数参照の形式で MAKEFILE_CONFIG は、
Makefile 作成の際に利用されることを想定しています。
require 'rbconfig'
print <<-END_OF_MAKEFILE
prefix = #{RbConfig::MAKEFILE_CONFIG['prefix']}
exec_prefix = #{RbC... -
Zlib
:: GzipReader (9055.0) -
gzip 形式の圧縮ファイルを読み込むラッパークラスです。 IO クラスのインスタンス (又は IO クラスのインスタンスと同じメソッドを 持つオブジェクト) と関連付けて使用します。
gzip 形式の圧縮ファイルを読み込むラッパークラスです。
IO クラスのインスタンス (又は IO クラスのインスタンスと同じメソッドを
持つオブジェクト) と関連付けて使用します。
require 'zlib'
=begin
# hoge.gz がない場合は下記で作成できる。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
=end
Zlib::GzipReader.open('hoge.gz') {|gz|
print gz.read
}
f = File.op... -
WEBrick
:: HTTPResponse # chunked=(flag) (9037.0) -
真に設定するとクライアントに返す内容(エンティティボディ)を chunk に分けるようになります。
真に設定するとクライアントに返す内容(エンティティボディ)を chunk に分けるようになります。
自身の WEBrick::HTTPResponse#request_http_version が 1.0 以下である場合、この値は無視されます。
@param flag true を指定した場合、レスポンスを chunk に分けてクライアントに返します。
require 'webrick'
include WEBrick
res = HTTPResponse.new( { :HTTPVersion => "1.1" } )
res.body = 'hoge'
res.... -
WEBrick
:: HTTPResponse # content _ length -> Integer | nil (9037.0) -
Content-Length ヘッダの値を整数で表すアクセサです。デフォルトは nil です。
Content-Length ヘッダの値を整数で表すアクセサです。デフォルトは nil です。
: body が String オブジェクトである場合
content_length の値が nil のとき Content-Length ヘッダには
body のサイズが使われます。nil でないとき body の実際のサイズとこの値が同じかどうかの検証は行われません。
: body が IO オブジェクトである場合
content_length の値が nil のとき Content-Length ヘッダはレスポンスに含まれず、IO から全てを読み込ん
でそれをエンティティボ... -
WEBrick
:: HTTPResponse # content _ length=(len) (9037.0) -
Content-Length ヘッダの値を整数で表すアクセサです。デフォルトは nil です。
Content-Length ヘッダの値を整数で表すアクセサです。デフォルトは nil です。
: body が String オブジェクトである場合
content_length の値が nil のとき Content-Length ヘッダには
body のサイズが使われます。nil でないとき body の実際のサイズとこの値が同じかどうかの検証は行われません。
: body が IO オブジェクトである場合
content_length の値が nil のとき Content-Length ヘッダはレスポンスに含まれず、IO から全てを読み込ん
でそれをエンティティボ... -
WEBrick
:: HTTPResponse # to _ s -> String (9037.0) -
実際にクライアントに送られるデータを文字列として返します。
実際にクライアントに送られるデータを文字列として返します。
require 'webrick'
include WEBrick
res = HTTPResponse.new( { :HTTPVersion => "1.1" } )
res.body = 'hoge'
print res.to_s
#=> 出力結果
HTTP/1.1 200 OK
Connection: Keep-Alive
Date: Sat, 27 Oct 2007 08:58:49 GMT
Server:
Content-Length: 4
hoge -
Zlib
:: GzipReader # ungetc(char) -> nil (9037.0) -
IO クラスの同名メソッド IO#ungetc と同じです。
IO クラスの同名メソッド IO#ungetc と同じです。
IO クラスの同名メソッドと同じですが、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib... -
Zlib
:: GzipWriter # pos -> Integer (9037.0) -
現在までに圧縮したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。
現在までに圧縮したデータの長さの合計を返します。
ファイルポインタの位置ではないことに注意して下さい。
require 'zlib'
filename='hoge1.gz'
f = File.open(filename, "w")
Zlib::GzipWriter.wrap(f, Zlib::BEST_COMPRESSION){|gz|
(1..10).each {|i|
gz.print i
puts gz.pos
}
}
#=> 1
#=> 2
#=> 3
... -
Zlib
:: GzipWriter # tell -> Integer (9037.0) -
現在までに圧縮したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。
現在までに圧縮したデータの長さの合計を返します。
ファイルポインタの位置ではないことに注意して下さい。
require 'zlib'
filename='hoge1.gz'
f = File.open(filename, "w")
Zlib::GzipWriter.wrap(f, Zlib::BEST_COMPRESSION){|gz|
(1..10).each {|i|
gz.print i
puts gz.pos
}
}
#=> 1
#=> 2
#=> 3
... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (427.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
ブロックを sec 秒の期限付きで実行します。
ブロックの実行時間が制限を過ぎたときは例外
Timeout::Error が発生します。
exception_class を指定した場合には Timeout::Error の代わりに
その例外が発生します。
ブロックパラメータ i は sec がはいります。
また sec が 0 もしくは nil のときは制限時間なしで
ブロックを実行します。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
@param message エラー... -
Timeout
. # timeout(sec , exception _ class , message) {|i| . . . } -> object (427.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
ブロックを sec 秒の期限付きで実行します。
ブロックの実行時間が制限を過ぎたときは例外
Timeout::Error が発生します。
exception_class を指定した場合には Timeout::Error の代わりに
その例外が発生します。
ブロックパラメータ i は sec がはいります。
また sec が 0 もしくは nil のときは制限時間なしで
ブロックを実行します。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
@param message エラー... -
制御構造 (415.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
制御構造
条件分岐:
* if
* unless
* case
繰り返し:
* while
* until
* for
* break
* next
* redo
* retry
例外処理:
* raise
* begin
その他:
* return
* BEGIN
* END
Rubyでは(Cなどとは異なり)制御構造は式であって、何らかの値を返すものが
あります(返さないものもあります。値を返さない式を代入式の右辺に置くと
syntax error になります)。
R... -
CSV
# force _ quotes? -> bool (373.0) -
出力される全てのフィールドがクオートされる場合は、真を返します。
出力される全てのフィールドがクオートされる場合は、真を返します。
//emlist[例][ruby]{
require "csv"
rows = [["header1", "header2"], ["row1_1,", "row1_2"]]
result = CSV.generate(force_quotes: false) do |csv|
rows.each { |row| csv << row }
csv.force_quotes? # => false
end
print result
# => header1,header2
# "row1_1,",row1_2... -
CSV
. open(filename , mode = "rb" , options = Hash . new) -> CSV (373.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO オブジェクトをオープンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジェクトを渡し、ブロック終了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するため... -
CSV
. open(filename , mode = "rb" , options = Hash . new) {|csv| . . . } -> nil (373.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO オブジェクトをオープンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジェクトを渡し、ブロック終了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するため... -
Net
:: POPMail # all(io) -> object (355.0) -
メールを受信します。
メールを受信します。
引数もブロックも与えられなかった場合にはメール
の内容を文字列で返します。
ブロックが渡されたときは、メールの内容を
少しずつ読み込み、読みこんだ文字列を
引数としてブロックを呼びだします。
ブロックなしで、オブジェクトを
引数として渡すとそのオブジェクトに
メールの内容を << メソッドで順次書き込みます。
通常 IO オブジェクトを渡します。
この場合引数として渡したオブジェクトを返します。
pop, all, mail はすべて同じ効果ですが、
all と mail は obsolete です。
使用例:
require 'net/pop'
... -
Net
:: POPMail # mail(io) -> object (355.0) -
メールを受信します。
メールを受信します。
引数もブロックも与えられなかった場合にはメール
の内容を文字列で返します。
ブロックが渡されたときは、メールの内容を
少しずつ読み込み、読みこんだ文字列を
引数としてブロックを呼びだします。
ブロックなしで、オブジェクトを
引数として渡すとそのオブジェクトに
メールの内容を << メソッドで順次書き込みます。
通常 IO オブジェクトを渡します。
この場合引数として渡したオブジェクトを返します。
pop, all, mail はすべて同じ効果ですが、
all と mail は obsolete です。
使用例:
require 'net/pop'
... -
Net
:: POPMail # pop(io) -> object (355.0) -
メールを受信します。
メールを受信します。
引数もブロックも与えられなかった場合にはメール
の内容を文字列で返します。
ブロックが渡されたときは、メールの内容を
少しずつ読み込み、読みこんだ文字列を
引数としてブロックを呼びだします。
ブロックなしで、オブジェクトを
引数として渡すとそのオブジェクトに
メールの内容を << メソッドで順次書き込みます。
通常 IO オブジェクトを渡します。
この場合引数として渡したオブジェクトを返します。
pop, all, mail はすべて同じ効果ですが、
all と mail は obsolete です。
使用例:
require 'net/pop'
... -
Addrinfo
# connect _ from(host , port) {|sock| . . . } -> object (337.0) -
引数で指定されたアドレスから 自身のアドレスへソケットを接続します。
引数で指定されたアドレスから
自身のアドレスへソケットを接続します。
接続元のアドレスは Addrinfo#family_addrinfo により生成された
ものが用いられます。
ブロックが渡されたときにはそのブロックに接続済み Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、接続済みSocket
オブジェクトが返されます。
引数で指定したアドレスはソケット接続のローカル側のアドレスになります。
require 'socket'
Addrinfo.tcp("www.ruby-lang.org", 80).co... -
CSV
. instance(data = $ stdout , options = Hash . new) {|csv| . . . } -> object (337.0) -
このメソッドは CSV.new のように CSV のインスタンスを返します。 しかし、返される値は Object#object_id と与えられたオプションを キーとしてキャッシュされます。
このメソッドは CSV.new のように CSV のインスタンスを返します。
しかし、返される値は Object#object_id と与えられたオプションを
キーとしてキャッシュされます。
ブロックが与えられた場合、生成されたインスタンスをブロックに渡して評価した
結果を返します。
@param data String か IO のインスタンスを指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
//emlist[例][ruby]{
require "csv"
options = { headers: true }
text... -
Socket
. tcp(host , port , local _ host=nil , local _ port=nil , connect _ timeout: nil) {|socket| . . . } -> object (337.0) -
TCP/IP で host:port に接続するソケットオブジェクトを作成します。
TCP/IP で host:port に接続するソケットオブジェクトを作成します。
local_host や local_port を指定した場合、ソケットをそこにバインドします。
ブロックを渡すと、生成したソケットをそのブロックに渡し呼び出します。
ブロック終了時にソケットオブジェクトを閉じます。
@param host 接続先のホスト名
@param port 接続先のポート番号
@param local_host 接続元のホスト名
@param local_port 接続元のポート番号
@param connect_timeout タイムアウトまでの秒数
@return ブロック付... -
net
/ http (307.0) -
汎用データ転送プロトコル HTTP を扱うライブラリです。 実装は 2616 に基きます。
汎用データ転送プロトコル HTTP を扱うライブラリです。
実装は 2616 に基きます。
=== 使用例
==== ウェブサーバからドキュメントを得る (GET)
//emlist[例1: GET して 表示するだけ][ruby]{
require 'net/http'
print Net::HTTP.get('www.example.com', '/index.html')
//}
//emlist[例2: URI を使う][ruby]{
require 'net/http'
require 'uri'
print Net::HTTP.get(URI.parse('http://w... -
NKF (217.0)
-
nkf(Network Kanji code conversion Filter, https://osdn.net/projects/nkf/) を Ruby から使うためのモジュールです。
nkf(Network Kanji code conversion Filter, https://osdn.net/projects/nkf/) を
Ruby から使うためのモジュールです。
=== 使い方
以下は、漢字コード変換コマンドの例です。
//emlist[例][ruby]{
#!/usr/local/bin/ruby
require 'nkf'
opt = ''
opt = ARGV.shift if ARGV[0][0] == ?-
while line = ARGF.gets
print NKF.nkf(opt, line)
end
//}
以下は、漢字コー...