種類
ライブラリ
- ビルトイン (104)
- csv (14)
- etc (1)
-
irb
/ magic-file (2) - json (1)
- logger (1)
-
net
/ ftp (2) -
net
/ http (8) -
net
/ pop (2) - nkf (1)
- open-uri (3)
- open3 (1)
- openssl (30)
- pathname (4)
- pty (2)
- rake (1)
-
rake
/ loaders / makefile (1) -
rubygems
/ indexer (1) -
rubygems
/ remote _ fetcher (1) - shell (2)
-
shell
/ command-processor (2) -
shell
/ filter (4) - syslog (5)
- tempfile (9)
- timeout (1)
- tmpdir (2)
- tracer (1)
- win32ole (1)
- zlib (29)
クラス
- CSV (13)
- Dir (7)
- File (13)
-
File
:: Stat (1) -
Gem
:: Indexer (1) -
Gem
:: RemoteFetcher (1) - IO (44)
- Logger (1)
-
Net
:: FTP (2) -
Net
:: HTTP (4) -
Net
:: HTTPGenericRequest (2) -
Net
:: HTTPResponse (2) -
Net
:: POP3 (2) -
OpenSSL
:: Config (4) -
OpenSSL
:: PKCS7 (1) -
OpenSSL
:: SSL :: SSLContext (5) -
OpenSSL
:: X509 :: ExtensionFactory (1) -
OpenSSL
:: X509 :: Store (1) - Pathname (4)
-
Rake
:: MakefileLoader (1) - Shell (2)
-
Shell
:: CommandProcessor (2) -
Shell
:: Filter (4) - Tempfile (8)
- Tracer (1)
- WIN32OLE (1)
-
Zlib
:: GzipFile (1) -
Zlib
:: GzipReader (7) -
Zlib
:: GzipWriter (19)
モジュール
- Enumerable (1)
- Etc (1)
-
File
:: Constants (18) - FileTest (2)
- JSON (1)
- Kernel (18)
-
OpenSSL
:: ASN1 (1) -
OpenSSL
:: Random (4) -
OpenSSL
:: X509 (6) - OpenURI (2)
- PTY (2)
- Syslog (4)
- Timeout (1)
オブジェクト
-
IRB
:: MagicFile (2)
キーワード
-
$ > (1) -
$ stderr (1) -
$ stdin (1) -
$ stdout (1) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - << (2)
- <=> (1)
- > (1)
- >> (1)
- APPEND (1)
- ARGF (1)
- BINARY (1)
- CREAT (1)
- CSV (1)
- Config (1)
-
DEFAULT
_ CERT _ FILE (1) -
DEFAULT
_ CERT _ FILE _ ENV (1) -
DEFAULT
_ CERT _ STORE (1) -
DEFAULT
_ CONFIG _ FILE (1) - DIRECT (1)
- DSYNC (1)
- Digest (1)
- EXCL (1)
- EXXX (1)
- ExtensionFactory (1)
- File (1)
- GzipReader (1)
- GzipWriter (1)
- IO (1)
- Marshal フォーマット (1)
-
NEWS for Ruby 2
. 1 . 0 (1) -
NEWS for Ruby 2
. 3 . 0 (1) - NKF (1)
- NOATIME (1)
- NOCTTY (1)
- NOFOLLOW (1)
- NONBLOCK (1)
- Open3 (1)
- RDONLY (1)
- RDWR (1)
- RSA (1)
- RSYNC (1)
- Random (1)
- Request (1)
- Ruby用語集 (1)
-
SC
_ MAPPED _ FILES (1) -
SHARE
_ DELETE (1) - SSLServer (1)
- SYNC (1)
- Syslog (1)
- TMPFILE (1)
- TRUNC (1)
- Tempfile (1)
-
V
_ ERR _ DEPTH _ ZERO _ SELF _ SIGNED _ CERT (1) -
V
_ ERR _ SELF _ SIGNED _ CERT _ IN _ CHAIN (1) -
V
_ ERR _ UNABLE _ TO _ GET _ ISSUER _ CERT (1) -
V
_ ERR _ UNABLE _ TO _ GET _ ISSUER _ CERT _ LOCALLY (1) - WRONLY (1)
-
add
_ file (1) -
add
_ row (1) - advise (1)
- atime (1)
- bigdecimal (1)
-
body
_ stream (1) -
body
_ stream= (1) -
ca
_ file (1) -
ca
_ file= (1) -
cert
_ store= (1) - chown (1)
- chunk (1)
- clone (1)
- close (3)
- close! (1)
-
close
_ on _ exec= (1) - comment= (1)
- config= (1)
- create (2)
- ctime (1)
- decode (1)
-
delete
_ all (2) - directory? (1)
- dump (1)
- dup (1)
- each (1)
-
each
_ byte (2) -
each
_ codepoint (2) - egd (1)
-
egd
_ bytes (1) -
external
_ encoding (1) - fail (3)
- fcntl (1)
- fdatasync (1)
- file (1)
- fileno (1)
- filter (3)
- finish (1)
- flock (1)
- flush (2)
-
for
_ fd (1) - foreach (2)
- get (2)
- gzip (1)
- identical? (1)
-
internal
_ encoding (1) - load (2)
-
load
_ random _ file (1) - logger (1)
- lstat (1)
- mask (1)
- mask= (1)
- mktmpdir (2)
- mlsd (2)
- mtime (1)
- mtime= (1)
-
net
/ pop (1) -
net
/ smtp (1) - new (9)
-
ole
_ show _ help (1) - open (30)
- open! (1)
-
open
_ uri (2) -
open
_ uri _ or _ path (1) -
orig
_ name= (1) - out (3)
- path (1)
- pos (2)
- pos= (1)
- post (2)
- print (1)
- printf (1)
- putc (1)
- puts (2)
- raise (3)
- read (5)
-
read
_ body (2) - readbyte (1)
- readchar (1)
- readline (1)
- reopen (4)
- rss (1)
-
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 2 feature (1) -
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 5 feature (1) -
set
_ encoding (3) -
set
_ params (1) - size (1)
- spawn (4)
- stat (1)
- stdout= (1)
- sync (1)
- sysread (1)
- sysseek (1)
- syswrite (1)
- tell (2)
- timeout (1)
-
to
_ path (2) -
to
_ s (1) - truncate (1)
- wrap (4)
- write (2)
-
write
_ random _ file (1) -
write
_ smime (1) - クラス/メソッドの定義 (1)
- セキュリティモデル (1)
- 制御構造 (1)
検索結果
先頭5件
-
OpenSSL
:: Config (9019.0) -
OpenSSL の設定ファイルを表すクラスです。
OpenSSL の設定ファイルを表すクラスです。
OpenSSL の設定ファイルは、キーと文字列を対応付けた単純な構造をしています。
また、キーはセクションによってグループ分けされています。
どのセクションにも属さないグローバルなキーを作ることもできます。
デフォルトの設定ファイルを読み込む例
require 'openssl'
conf = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE)
p conf.sections # => ["req_distinguished_name", "req_attribu... -
OpenSSL
:: Config # each {|section , key , value| . . . } -> self (9019.0) -
オブジェクトに含まれる全ての設定情報を順にブロックに渡し 呼び出します。
オブジェクトに含まれる全ての設定情報を順にブロックに渡し
呼び出します。
渡される値は、セクションを表す文字列、キーを表す文字列、キーに
割り当てられた値の文字列、の3つです。
require 'openssl'
conf = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE)
conf.each{|section, key, value| p [section, key, value]}
# => ["req_distinguished_name", "countryName", "Country Name... -
OpenSSL
:: Random (9019.0) -
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
* 4086
=== 暗号と乱数
OpenSSL では、鍵を生成するためなどに乱数を用いています。例えば RSA では
巨大(512bitや1024bitなど)な素数の組を乱数で生成し、そこから公開鍵、秘密鍵の
ペアを計算します。鍵は他人に知られてはならないため、
その乱数は外部からの推論が不可能な良い性質を持っている必要があります。
このようなメソッドには以下のものがあります。
* OpenSSL::PKey::RSA.generate
* OpenSSL::PKey::DSA.generate
* Open... -
OpenSSL
:: SSL :: SSLContext # cert _ store=(store) (9019.0) -
接続相手の証明書の検証のために使う、信頼している CA 証明書を 含む証明書ストアを設定します。
接続相手の証明書の検証のために使う、信頼している CA 証明書を
含む証明書ストアを設定します。
通常は OpenSSL::SSL::SSLContext#ca_path= や
OpenSSL::SSL::SSLContext#ca_file= で証明書を設定しますが、
CRL を使いたいなど、より詳細な設定をしたい場合にはこれを使います。
デフォルトは nil (証明書ストアを指定しない)です。
@param store 設定する証明書ストア(OpenSSL::X509::Store のインスタンス)
@see OpenSSL::SSL::SSLContext#cert_store -
OpenSSL
:: X509 :: ExtensionFactory # config=(config) (9019.0) -
自身にコンフィグファイルオブジェクトを設定します。
自身にコンフィグファイルオブジェクトを設定します。
例
require 'openssl'
factory.config = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE)
@param config 設定ファイル(OpenSSL::Config オブジェクト) -
OpenSSL
:: X509 :: Request (9019.0) -
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす クラスです。
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす
クラスです。
X.509 CSR については 2986 などを参照してください。
=== 例
CSR を生成する例。
require 'openssl'
# ファイルから秘密鍵を読み込む
rsa = OpenSSL::PKey::RSA.new(File.read("privkey.pem"))
# 新しい CSR オブジェクトを生成
csr = OpenSSL::X509::Request.new
# DN を生成
name = OpenSSL::X50... -
OpenSSL
:: X509 :: V _ ERR _ DEPTH _ ZERO _ SELF _ SIGNED _ CERT -> Integer (9019.0) -
検証している証明書がルート CA (自己署名証明書)であり、 それが信頼されている証明書でないことを意味します。
検証している証明書がルート CA (自己署名証明書)であり、
それが信頼されている証明書でないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。
@see OpenSSL::X509::Store#add_file,
OpenSSL::X509::Store#add_path,
OpenSSL::X509::Store#add_cert,
OpenSSL::X509::Store#set_default_paths -
OpenSSL
:: X509 :: V _ ERR _ SELF _ SIGNED _ CERT _ IN _ CHAIN -> Integer (9019.0) -
証明書チェインのルート CA (自己署名証明書)が 信頼されている証明書でないことを意味します。
証明書チェインのルート CA (自己署名証明書)が
信頼されている証明書でないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。
@see OpenSSL::X509::Store#add_file,
OpenSSL::X509::Store#add_path,
OpenSSL::X509::Store#add_cert,
OpenSSL::X509::Store#set_default_paths -
OpenSSL
:: X509 :: V _ ERR _ UNABLE _ TO _ GET _ ISSUER _ CERT -> Integer (9019.0) -
issuer(発行者)の証明書が 信頼している証明書群の中から見付からない ような証明書を、信頼している証明書群に含んでいることを意味します。
issuer(発行者)の証明書が
信頼している証明書群の中から見付からない
ような証明書を、信頼している証明書群に含んでいることを意味します。
つまり、信頼している証明書群に issuer を親とする木構造を考えた場合、
その root(根) となるノードが自己署名されていないことを意味します。
これは、通常信頼している証明書のリストが不完全であることを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。
@see OpenSSL::X509::Store#add_... -
OpenSSL
:: X509 :: V _ ERR _ UNABLE _ TO _ GET _ ISSUER _ CERT _ LOCALLY -> Integer (9019.0) -
証明書チェイン末尾の証明書の issuer(発行者)の証明書が 信頼している証明書群の中から見付からないことを意味します。
証明書チェイン末尾の証明書の issuer(発行者)の証明書が
信頼している証明書群の中から見付からないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。
@see OpenSSL::X509::Store#add_file,
OpenSSL::X509::Store#add_path,
OpenSSL::X509::Store#add_cert,
OpenSSL::X509::Store#set_default_paths -
Tempfile
# close! -> nil (9019.0) -
テンポラリファイルをクローズし、すぐに削除します。
テンポラリファイルをクローズし、すぐに削除します。
require "tempfile"
tf = Tempfile.open("bar")
path = tf.path
tf.close!
p FileTest.exist?(path) # => false -
Tempfile
# close(real = false) -> nil (9019.0) -
テンポラリファイルをクローズします。 real が偽ならば、テンポラリファイルはGCによって削除されます。 そうでなければ、すぐに削除されます。
テンポラリファイルをクローズします。
real が偽ならば、テンポラリファイルはGCによって削除されます。
そうでなければ、すぐに削除されます。
@param real false もしくはそれ以外を指定します。
require "tempfile"
tf = Tempfile.open("bar")
tf.close
p FileTest.exist?(tf.path) # => true -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1225.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
ruby 1
. 6 feature (703.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 がなくなっ
ていま... -
IO
# stat -> File :: Stat (442.0) -
ファイルのステータスを含む File::Stat オブジェクトを生成して 返します。
ファイルのステータスを含む File::Stat オブジェクトを生成して
返します。
@raise Errno::EXXX ステータスの読み込みに失敗した場合に発生します。
@raise IOError 既に close されていた場合に発生します。
//emlist[例][ruby]{
IO.write("testfile", "This is line one\nThis is line two\n")
File.open("testfile") do |f|
s = f.stat
"%o" % s.mode # => "100644"
s.blksize ... -
Zlib
:: GzipWriter # orig _ name=(filename) (373.0) -
gzip ファイルのヘッダーに記録する元ファイル名を指定します。
gzip ファイルのヘッダーに記録する元ファイル名を指定します。
Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。
@param filename gzip ファイルのヘッダーに記録する元ファイル名を文字列で指定します。
@return filename を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zl... -
Dir
. new(path , encoding: Encoding . find("filesystem")) -> Dir (367.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
Gem
:: Indexer # gzip(filename) (349.0) -
Zlib::GzipWriter.open へのラッパーです。 与えられたファイル名を圧縮して保存します。
Zlib::GzipWriter.open へのラッパーです。
与えられたファイル名を圧縮して保存します。 -
Zlib
:: GzipWriter # close -> File (343.0) -
フッターを書き出し、GzipWriter オブジェクトをクローズします。close と finish の違いは Zlib::GzipFile#close, Zlib::GzipFile#finish を 参照して下さい。
フッターを書き出し、GzipWriter オブジェクトをクローズします。close と
finish の違いは Zlib::GzipFile#close, Zlib::GzipFile#finish を
参照して下さい。
注意: Ruby の finalizer の制約のため、GzipWriter オブジェクトは
必ずクローズしてください。そうしなければフッターを書き出すことが
できず、壊れた gzip ファイルを生成してしまう可能性があります。
require 'zlib'
def case_finish
filename='hoge1.gz'
gz =... -
Zlib
:: GzipWriter # finish -> File (343.0) -
フッターを書き出し、GzipWriter オブジェクトをクローズします。close と finish の違いは Zlib::GzipFile#close, Zlib::GzipFile#finish を 参照して下さい。
フッターを書き出し、GzipWriter オブジェクトをクローズします。close と
finish の違いは Zlib::GzipFile#close, Zlib::GzipFile#finish を
参照して下さい。
注意: Ruby の finalizer の制約のため、GzipWriter オブジェクトは
必ずクローズしてください。そうしなければフッターを書き出すことが
できず、壊れた gzip ファイルを生成してしまう可能性があります。
require 'zlib'
def case_finish
filename='hoge1.gz'
gz =... -
ruby 1
. 9 feature (343.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* [parser]: 文法の変更
* [regexp]: 正規表現の機能拡張
* [marshal]: Marshal ファイルのフォーマット変更
* ... -
logger (325.0)
-
ログを記録するためのライブラリです。
ログを記録するためのライブラリです。
=== 説明
6段階のログレベルに分けてログを記録します。
: UNKNOWN
常に記録されるべき不明なエラー
: FATAL
プログラムをクラッシュさせるような制御不可能なエラー
: ERROR
制御可能なエラー
: WARN
警告
: INFO
一般的な情報
: DEBUG
低レベルの情報
全てのメッセージは必ずログレベルを持ちます。また Logger オブジェクトも同じように
ログレベルを持ちます。メッセージのログレベルが Logger オブジェクトのログレベルよりも
低い場合メッセージは記録されません。
普段は I... -
ruby 1
. 8 . 3 feature (307.0) -
ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))
ruby 1.8.3 feature
*((<ruby 1.8 feature>))
*((<ruby 1.8.2 feature>))
ruby 1.8.2 から ruby 1.8.3 までの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (289.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
Kernel
. # spawn(program , *args) -> Integer (289.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
クラス/メソッドの定義 (253.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* defined
===[a:class] クラス定義
//emlist[例][ruby]{
class Foo < S... -
net
/ pop (235.0) -
このライブラリは、POP3 (Post Office Protocol version 3) を 用いてPOPサーバからメールを受信する機能を提供するライブラリです。
このライブラリは、POP3 (Post Office Protocol version 3) を
用いてPOPサーバからメールを受信する機能を提供するライブラリです。
POP3 の実装は 1939 に基いています。
2449 で定義されているPOP3拡張には対応していません。
=== 使用例
==== メールの受信
以下のコードは、メールを受信してファイル 'inbox/1' 'inbox/2'... に
書きこみ、サーバ上からメールを消します。
'pop.example.com' は適当なPOP3のサーバのホスト名に、
'YourAccount' と 'YourPassword' ... -
IO (217.0)
-
基本的な入出力機能のためのクラスです。
基本的な入出力機能のためのクラスです。
File::Constants は、File から IO へ移動しました。
===[a:m17n] 多言語化と IO のエンコーディング
IO オブジェクトはエンコーディングを持ちます。
エンコーディングの影響を受けるメソッドと受けないメソッドがあります。
影響を受けるメソッドでは、IO のエンコーディングに従い読み込まれた文字列のエンコーディングが決定されます。
また IO のエンコーディングを適切に設定することにより、読み込み時・書き込み時に文字列のエンコーディングを
変換させることもできます。
==== エンコーディングの影響を受けるメ... -
IO
. read(path , **opt) -> String | nil (199.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
path で指定されたファイルを offset 位置から
length バイト分読み込んで返します。
既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を... -
IO
. read(path , length = nil , **opt) -> String | nil (199.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
path で指定されたファイルを offset 位置から
length バイト分読み込んで返します。
既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を... -
IO
. read(path , length = nil , offset = 0 , **opt) -> String | nil (199.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
path で指定されたファイルを offset 位置から
length バイト分読み込んで返します。
既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を... -
NEWS for Ruby 2
. 3 . 0 (199.0) -
NEWS for Ruby 2.3.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...NEWS for Ruby 2.3.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス... -
bigdecimal (181.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 では正確な値を得る事がで... -
ruby 1
. 8 . 5 feature (163.0) -
ruby 1.8.5 feature ruby 1.8.4 から ruby 1.8.5 までの変更点です。
ruby 1.8.5 feature
ruby 1.8.4 から ruby 1.8.5 までの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッ... -
制御構造 (145.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... -
Logger
. new(logdev , shift _ age = 0 , shift _ size = 1048576) -> Logger (127.0) -
Logger オブジェクトを生成します。
Logger オブジェクトを生成します。
@param logdev ログを書き込むファイル名か、 IO オブジェクト(STDOUT, STDERR など)を指定します。
@param shift_age ログファイルを保持する数か、ログファイルを切り替える頻度を指定します。
頻度には daily, weekly, monthly を文字列で指定することができます。
省略すると、ログの保存先を切り替えません。
@param shift_size shift_age を整数で指定した場合のみ有効です。
... -
ruby 1
. 8 . 2 feature (127.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
ruby 1.8.2 feature
ruby 1.8.2 での ruby 1.8.1 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
*カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
*レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/... -
IO
. for _ fd(fd , mode = "r" , **opts) -> IO (115.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
オープン済みのファイルディスクリプタ fd に対する新しい
IO オブジェクトを生成して返します。
IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
IO.new, IO.for_fd はブロックを受け付けません。
=== キーワード引数
このメソッドは以下のキーワード引数を利用できます。
* :mode mode引数と同じ意味です
* :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
... -
IO
. new(fd , mode = "r" , **opts) -> IO (115.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
オープン済みのファイルディスクリプタ fd に対する新しい
IO オブジェクトを生成して返します。
IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
IO.new, IO.for_fd はブロックを受け付けません。
=== キーワード引数
このメソッドは以下のキーワード引数を利用できます。
* :mode mode引数と同じ意味です
* :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
... -
CSV
# <<(row) -> self (109.0) -
自身に row を追加します。
自身に row を追加します。
データソースは書き込み用にオープンされていなければなりません。
@param row 配列か CSV::Row のインスタンスを指定します。
CSV::Row のインスタンスが指定された場合は、CSV::Row#fields の値
のみが追加されます。
//emlist[例 配列を指定][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18... -
CSV
# add _ row(row) -> self (109.0) -
自身に row を追加します。
自身に row を追加します。
データソースは書き込み用にオープンされていなければなりません。
@param row 配列か CSV::Row のインスタンスを指定します。
CSV::Row のインスタンスが指定された場合は、CSV::Row#fields の値
のみが追加されます。
//emlist[例 配列を指定][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18... -
CSV
# puts(row) -> self (109.0) -
自身に row を追加します。
自身に row を追加します。
データソースは書き込み用にオープンされていなければなりません。
@param row 配列か CSV::Row のインスタンスを指定します。
CSV::Row のインスタンスが指定された場合は、CSV::Row#fields の値
のみが追加されます。
//emlist[例 配列を指定][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18... -
IO
# readlines(limit) -> [String] (109.0) -
データを全て読み込んで、その各行を要素としてもつ配列を返します。 既に EOF に達していれば空配列 [] を返します。
データを全て読み込んで、その各行を要素としてもつ配列を返します。
既に EOF に達していれば空配列 [] を返します。
テキスト読み込みメソッドとして動作します。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。
空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError ... -
IO
# readlines(rs = $ / ) -> [String] (109.0) -
データを全て読み込んで、その各行を要素としてもつ配列を返します。 既に EOF に達していれば空配列 [] を返します。
データを全て読み込んで、その各行を要素としてもつ配列を返します。
既に EOF に達していれば空配列 [] を返します。
テキスト読み込みメソッドとして動作します。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。
空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError ... -
IO
# readlines(rs , limit) -> [String] (109.0) -
データを全て読み込んで、その各行を要素としてもつ配列を返します。 既に EOF に達していれば空配列 [] を返します。
データを全て読み込んで、その各行を要素としてもつ配列を返します。
既に EOF に達していれば空配列 [] を返します。
テキスト読み込みメソッドとして動作します。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。
空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード)。
@param limit 最大の読み込みバイト数
@raise IOError ... -
Marshal フォーマット (109.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。
=== nil, true, false
それぞれ、'0', 'T', 'F' になります。
//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}
Ruby 2.1 以前では、インスタンス変数を設定しても dump されません... -
Zlib
:: GzipWriter # flush(flush = Zlib :: SYNC _ FLUSH) -> self (109.0) -
まだ書き出されていないデータをフラッシュします。
まだ書き出されていないデータをフラッシュします。
flush は Zlib::Deflate#deflate と同じです。
省略時は Zlib::SYNC_FLUSH が使用されます。
flush に Zlib::NO_FLUSH を指定することは無意味です。
@param flush Zlib::NO_FLUSH Zlib::SYNC_FLUSH Zlib::FULL_FLUSH などを指定します。
require 'zlib'
def case1
filename='hoge1.gz'
fw = File.open(filename, "w")
... -
net
/ smtp (109.0) -
メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol) を扱うライブラリです。
メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol)
を扱うライブラリです。
ヘッダなどメールのデータを扱うことはできません。
SMTP の実装は 2821 に基いています。
=== 使用例
==== とにかくメールを送る
SMTP を使ってメールを送るにはまず SMTP.start でセッションを開きます。
第一引数がサーバのアドレスで第二引数がポート番号です。
ブロックを使うと File.open と同じように終端処理を自動的にやってくれる
のでおすすめです。
require 'net/smtp'
Net::SMTP.... -
Pathname
# to _ path -> String (97.0) -
File.open などの引数に渡す際に呼ばれるメソッドです。 Pathname オブジェ クトにおいては、 to_s と同じです。
File.open などの引数に渡す際に呼ばれるメソッドです。 Pathname オブジェ
クトにおいては、 to_s と同じです。
@see Pathname#to_s -
CSV
. filter(input , options = Hash . new) {|row| . . . } (91.0) -
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築 するのに便利です。
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築
するのに便利です。
与えられたブロックに一行ずつ渡されます。ブロックに渡された行は必要であ
れば変更することができます。ブロックの評価後に行を全て output に書き込
みます。
@param input String か IO のインスタンスを指定します。
デフォルトは ARGF です。
@param output String か IO のインスタンスを指定します。
デフォルトは $stdout です。
@param options ":in... -
CSV
. filter(input , output , options = Hash . new) {|row| . . . } (91.0) -
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築 するのに便利です。
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築
するのに便利です。
与えられたブロックに一行ずつ渡されます。ブロックに渡された行は必要であ
れば変更することができます。ブロックの評価後に行を全て output に書き込
みます。
@param input String か IO のインスタンスを指定します。
デフォルトは ARGF です。
@param output String か IO のインスタンスを指定します。
デフォルトは $stdout です。
@param options ":in... -
CSV
. filter(options = Hash . new) {|row| . . . } (91.0) -
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築 するのに便利です。
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築
するのに便利です。
与えられたブロックに一行ずつ渡されます。ブロックに渡された行は必要であ
れば変更することができます。ブロックの評価後に行を全て output に書き込
みます。
@param input String か IO のインスタンスを指定します。
デフォルトは ARGF です。
@param output String か IO のインスタンスを指定します。
デフォルトは $stdout です。
@param options ":in... -
Dir
# read -> String | nil (91.0) -
ディレクトリストリームから次の要素を読み出して返します。最後の要素 まで読み出していれば nil を返します。
ディレクトリストリームから次の要素を読み出して返します。最後の要素
まで読み出していれば nil を返します。
@raise Errno::EXXX ディレクトリの読み出しに失敗した場合に発生します。
@raise IOError 既に自身が close している場合に発生します。
//emlist[例][ruby]{
require 'tmpdir'
Dir.mktmpdir do |tmpdir|
File.open("#{tmpdir}/test1.txt", "w") { |f| f.puts("test1") }
File.open("#{tmpdir}/test2... -
Ruby用語集 (91.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
Zlib
:: GzipReader . wrap(io) -> Zlib :: GzipReader (91.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 (91.0) -
io と関連付けられた GzipReader オブジェクトを作成します。
io と関連付けられた GzipReader オブジェクトを作成します。
ブロックが与えられた場合は、それを引数としてブロックを実行します。
ブロックの実行が終了すると、GzipReader オブジェクトは自動的に
クローズされます。関連付けられている IO オブジェクトまで
クローズしたくない時は、ブロック中で Zlib::GzipFile#finish
メソッドを呼び出して下さい。
@param io IO オブジェクトを指定します。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.o... -
Syslog
. # mask -> Integer | nil (85.0) -
ログの優先度のマスクを取得または設定します。 マスクは永続的であり、 Syslog.openやSyslog.close ではリセットされません。
ログの優先度のマスクを取得または設定します。
マスクは永続的であり、
Syslog.openやSyslog.close
ではリセットされません。
@param mask ログの優先度のマスクを設定します。
@raise RuntimeError syslog がオープンされていない場合、発生します。
使用例
require 'syslog'
include Syslog::Constants
# ログの場所は実行環境によって異なる。詳しくはsyslog.conf を参照
log = '/var/log/ftp.log'
Syslog.open('ftpd', L... -
Syslog
. # mask=(mask) (85.0) -
ログの優先度のマスクを取得または設定します。 マスクは永続的であり、 Syslog.openやSyslog.close ではリセットされません。
ログの優先度のマスクを取得または設定します。
マスクは永続的であり、
Syslog.openやSyslog.close
ではリセットされません。
@param mask ログの優先度のマスクを設定します。
@raise RuntimeError syslog がオープンされていない場合、発生します。
使用例
require 'syslog'
include Syslog::Constants
# ログの場所は実行環境によって異なる。詳しくはsyslog.conf を参照
log = '/var/log/ftp.log'
Syslog.open('ftpd', L... -
ARGF (73.0)
-
スクリプトに指定した引数 (Object::ARGV を参照) をファイル名とみなして、 それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。 ARGV が空なら標準入力を対象とします。 ARGV を変更すればこのオブジェクトの動作に影響します。
スクリプトに指定した引数
(Object::ARGV を参照) をファイル名とみなして、
それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。
ARGV が空なら標準入力を対象とします。
ARGV を変更すればこのオブジェクトの動作に影響します。
//emlist[][ruby]{
while line = ARGF.gets
# do something
end
//}
は、
//emlist[][ruby]{
while argv = ARGV.shift
File.open(argv) {|file|
while line = file.gets... -
CSV (73.0)
-
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
=== 読み込み
//emlist[][ruby]{
require "csv"
csv_text = <<~CSV_TEXT
Ruby,1995
Rust,2010
CSV_TEXT
IO.write "sample.csv", csv_text
# ファイルから一行ずつ
CSV.foreach("sample.csv") do |row|
p row
end
# => ["Ruby", "1995"]
# ["Rust", "2010"]
# ファイルから一度に
p CSV.r... -
CSV
. new(data , options = Hash . new) -> CSV (73.0) -
このメソッドは CSV ファイルを読み込んだり、書き出したりするために String か IO のインスタンスをラップします。
このメソッドは CSV ファイルを読み込んだり、書き出したりするために
String か IO のインスタンスをラップします。
ラップされた文字列の先頭から読み込むことになります。
文字列に追記したい場合は CSV.generate を使用してください。
他の位置から処理したい場合はあらかじめそのように設定した StringIO を渡してください。
@param data String か IO のインスタンスを指定します。
String のインスタンスを指定した場合、CSV#string を使用して
後からデータを取り出すことが出来ます。... -
Dir
. mktmpdir(prefix _ suffix = nil , tmpdir = nil) -> String (73.0) -
一時ディレクトリを作成します。
一時ディレクトリを作成します。
作成されたディレクトリのパーミッションは 0700 です。
ブロックが与えられた場合は、ブロックの評価が終わると
作成された一時ディレクトリやその配下にあったファイルを
FileUtils.#remove_entry を用いて削除し、ブロックの値をかえします。
ブロックが与えられなかった場合は、作成した一時ディレクトリのパスを
返します。この場合、このメソッドは作成した一時ディレクトリを削除しません。
@param prefix_suffix nil の場合は、'd' をデフォルトのプレフィクスとして使用します。サフィックスは付きません。
... -
Dir
. mktmpdir(prefix _ suffix = nil , tmpdir = nil) {|dir| . . . } -> object (73.0) -
一時ディレクトリを作成します。
一時ディレクトリを作成します。
作成されたディレクトリのパーミッションは 0700 です。
ブロックが与えられた場合は、ブロックの評価が終わると
作成された一時ディレクトリやその配下にあったファイルを
FileUtils.#remove_entry を用いて削除し、ブロックの値をかえします。
ブロックが与えられなかった場合は、作成した一時ディレクトリのパスを
返します。この場合、このメソッドは作成した一時ディレクトリを削除しません。
@param prefix_suffix nil の場合は、'd' をデフォルトのプレフィクスとして使用します。サフィックスは付きません。
... -
IO
# sysseek(offset , whence = IO :: SEEK _ SET) -> Integer (73.0) -
lseek(2) と同じです。IO#seek では、 IO#sysread, IO#syswrite と併用すると正しく動作しないので代わりにこのメソッドを使います。 位置 offset への移動が成功すれば移動した位置(ファイル先頭からのオフセット)を返します。
lseek(2) と同じです。IO#seek では、
IO#sysread, IO#syswrite と併用すると正しく動作しないので代わりにこのメソッドを使います。
位置 offset への移動が成功すれば移動した位置(ファイル先頭からのオフセット)を返します。
書き込み用にバッファリングされた IO に対して実行すると警告が出ます。
File.open("/dev/zero") {|f|
buf = f.read(3)
f.sysseek(0)
}
# => -:3:in `sysseek': sysseek for buffered IO (IOErro... -
NEWS for Ruby 2
. 1 . 0 (73.0) -
NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.1.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.0.0 以降の変更
=== 言語仕様の変更
* キーワード引数のデフォルト値が省略可能になりました。これらの「必須キーワード引数」は呼び出し時に明示的に与えなければなりません。
* 整数や小数のリテラルの末尾に'r','i','... -
NKF (73.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
//}
以下は、漢字コー... -
Net
:: HTTPResponse # read _ body {|str| . . . . } -> () (73.0) -
ブロックを与えなかった場合にはエンティティボディを 文字列で返します。 ブロックを与えた場合には エンティティボディを少しずつ取得して順次ブロックに 文字列で与えます。
ブロックを与えなかった場合にはエンティティボディを
文字列で返します。
ブロックを与えた場合には
エンティティボディを少しずつ取得して順次ブロックに
文字列で与えます。
レスポンスがボディを持たない場合には nil を返します。
//emlist[例1 ブロックを与えずに一度に結果取得][ruby]{
require 'net/http'
uri = "http://www.example.com/index.html"
response = Net::HTTP.get_response(URI.parse(uri))
response.read_body[0..10] # => "<... -
Net
:: HTTPResponse # read _ body(dest=nil) -> String|nil (73.0) -
ブロックを与えなかった場合にはエンティティボディを 文字列で返します。 ブロックを与えた場合には エンティティボディを少しずつ取得して順次ブロックに 文字列で与えます。
ブロックを与えなかった場合にはエンティティボディを
文字列で返します。
ブロックを与えた場合には
エンティティボディを少しずつ取得して順次ブロックに
文字列で与えます。
レスポンスがボディを持たない場合には nil を返します。
//emlist[例1 ブロックを与えずに一度に結果取得][ruby]{
require 'net/http'
uri = "http://www.example.com/index.html"
response = Net::HTTP.get_response(URI.parse(uri))
response.read_body[0..10] # => "<... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (73.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
ブロックを sec 秒の期限付きで実行します。
ブロックの実行時間が制限を過ぎたときは例外
Timeout::Error が発生します。
exception_class を指定した場合には Timeout::Error の代わりに
その例外が発生します。
ブロックパラメータ i は sec がはいります。
また sec が 0 もしくは nil のときは制限時間なしで
ブロックを実行します。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
例 長い計算のタイムアウト
r... -
Zlib
:: GzipReader (73.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... -
Zlib
:: GzipReader . new(io) -> Zlib :: GzipReader (73.0) -
io と関連付けられた GzipReader オブジェクトを作成します。
io と関連付けられた GzipReader オブジェクトを作成します。
GzipReader オブジェクトは io からデータを逐次リードして
解析/展開を行います。io には少なくとも、IO#read と
同じ動作をする read メソッドが定義されている必要があります。
@param io IO オブジェクト、もしくは少なくとも IO#read と同じ動作を
する read メソッドが定義されているオブジェクト
@raise Zlib::GzipFile::Error ヘッダーの解析に失敗した場合発生します。
require 'zlib'
File... -
Zlib
:: GzipWriter # <<(str) -> self (73.0) -
str を出力します。str が文字列でない場合は to_s を用いて 文字列に変換します。
str を出力します。str が文字列でない場合は to_s を用いて
文字列に変換します。
@param str 出力したいオブジェクトを与えます。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz << "hoge" << "fuga"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
... -
Zlib
:: GzipWriter # comment=(string) (73.0) -
gzip ファイルのヘッダーに記録するコメントを指定します。
gzip ファイルのヘッダーに記録するコメントを指定します。
Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。
@param string gzip ファイルのヘッダーに記録するコメントを文字列で指定します。
@return string を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST... -
Zlib
:: GzipWriter # mtime=(time) (73.0) -
gzip ファイルのヘッダーに記録する最終更新時間を指定します。
gzip ファイルのヘッダーに記録する最終更新時間を指定します。
Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。
@param time gzip ファイルのヘッダーに記録する最終更新時間を整数で指定します。
@return time を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_... -
Zlib
:: GzipWriter # print(*str) -> nil (73.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
}... -
Zlib
:: GzipWriter # printf(format , *args) -> nil (73.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... -
Zlib
:: GzipWriter # putc(ch) -> object (73.0) -
文字 ch を自身に出力します。
文字 ch を自身に出力します。
ch が数値なら 0 〜 255 の範囲の対応する文字を出力します。
ch が文字列なら、その先頭 1byte を出力します。
どちらでもない場合は、ch.to_int で整数に変換を試みます。
@param ch 出力する文字を数値または文字列で指定します。
@return ch を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
... -
Zlib
:: GzipWriter # puts(*str) -> nil (73.0) -
各引数を自身に出力し、それぞれの後に改行を出力します。
各引数を自身に出力し、それぞれの後に改行を出力します。
@param str 出力したいオブジェクトを指定します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.puts "fuga"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}
#=> ... -
Zlib
:: GzipWriter # write(str) -> Integer (73.0) -
自身に str を出力します。str が文字列でなけ れば to_s による文字列化を試みます。
自身に str を出力します。str が文字列でなけ
れば to_s による文字列化を試みます。
@param str 出力する文字列を指定します。文字列でない場合は to_s で文字列に変換します。
@return 実際に出力できたバイト数を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.write "foo"
}
fr = File.open... -
Zlib
:: GzipWriter . wrap(io , level = Zlib :: DEFAULT _ COMPRESSION , strategy = Zlib :: DEFAULT _ STRATEGY) -> Zlib :: GzipWriter (73.0) -
io と関連付けられた GzipWriter オブジェクトを作成します。 ブロックが与えられた場合、 それを引数としてブロックを実行します。 ブロックの実行が終了すると、GzipWriter オブジェクトは自動的に クローズされます。関連付けられている IO オブジェクトまで クローズしたくない時は、ブロック中で Zlib::GzipFile#finish メソッドを呼び出して下さい。
io と関連付けられた GzipWriter オブジェクトを作成します。
ブロックが与えられた場合、
それを引数としてブロックを実行します。
ブロックの実行が終了すると、GzipWriter オブジェクトは自動的に
クローズされます。関連付けられている IO オブジェクトまで
クローズしたくない時は、ブロック中で Zlib::GzipFile#finish
メソッドを呼び出して下さい。
@param io IOオブジェクト、もしくは少なくとも、
IO#write と 同じ動作をする write メソッドが定義されている必要があります。
@param level 0... -
Zlib
:: GzipWriter . wrap(io , level = Zlib :: DEFAULT _ COMPRESSION , strategy = Zlib :: DEFAULT _ STRATEGY) {|gz| . . . } -> object (73.0) -
io と関連付けられた GzipWriter オブジェクトを作成します。 ブロックが与えられた場合、 それを引数としてブロックを実行します。 ブロックの実行が終了すると、GzipWriter オブジェクトは自動的に クローズされます。関連付けられている IO オブジェクトまで クローズしたくない時は、ブロック中で Zlib::GzipFile#finish メソッドを呼び出して下さい。
io と関連付けられた GzipWriter オブジェクトを作成します。
ブロックが与えられた場合、
それを引数としてブロックを実行します。
ブロックの実行が終了すると、GzipWriter オブジェクトは自動的に
クローズされます。関連付けられている IO オブジェクトまで
クローズしたくない時は、ブロック中で Zlib::GzipFile#finish
メソッドを呼び出して下さい。
@param io IOオブジェクト、もしくは少なくとも、
IO#write と 同じ動作をする write メソッドが定義されている必要があります。
@param level 0... -
rss (73.0)
-
RSS を扱うためのライブラリです。
RSS を扱うためのライブラリです。
=== 参考
* RSS 0.91 http://backend.userland.com/rss091
* RSS 1.0 http://purl.org/rss/1.0/spec
* RSS 2.0 http://www.rssboard.org/rss-specification
* Atom 1.0 https://www.ietf.org/rfc/rfc4287.txt
=== 注意
RSS ParserはRSS 0.9x/1.0/2.0, Atom 1.0 をサポートしていますが,RSS 0.90
はサポートしてませ... -
Enumerable
# chunk {|elt| . . . } -> Enumerator (55.0) -
要素を前から順にブロックで評価し、その結果によって 要素をチャンクに分けた(グループ化した)要素を持つ Enumerator を返します。
要素を前から順にブロックで評価し、その結果によって
要素をチャンクに分けた(グループ化した)要素を持つ
Enumerator を返します。
ブロックの評価値が同じ値が続くものを一つのチャンクとして
取り扱います。すなわち、ブロックの評価値が一つ前と
異なる所でチャンクが区切られます。
返り値の Enumerator は各チャンクのブロック評価値と
各チャンクの要素を持つ配列のペアを各要素とします。
そのため、eachだと以下のようになります。
//emlist[][ruby]{
enum.chunk {|elt| key }.each {|key, ary| do_something ... -
Errno
:: EXXX (55.0) -
システム依存のエラーコードのそれぞれに対応する一連の例外クラスです。 Rubyのライブラリ内部でシステムコールや一部のC言語関数が失敗したときに発生します。
システム依存のエラーコードのそれぞれに対応する一連の例外クラスです。
Rubyのライブラリ内部でシステムコールや一部のC言語関数が失敗したときに発生します。
実際には「EXXX」というクラスが定義されているわけではありません。「XXX」の部分は下記に列挙したような各種のエラー名が入ります。
例えば、File.open の内部でシステムコール open(2) がエラーコード ENOENT を返すと、Rubyは例外 Errno::ENOENT を発生させます。
Ruby は処理系がコンパイルされるときに、デフォルトで下記リストのような Errno::EXXX クラスを定義しようとします。
動作... -
IO
# fdatasync -> 0 (55.0) -
IO のすべてのバッファされているデータを直ちにディスクに書き込みます。
IO のすべてのバッファされているデータを直ちにディスクに書き込みます。
fdatasync(2) をサポートしていない OS 上では代わりに
IO#fsync を呼びだします。
IO#fsync との違いは fdatasync(2) を参照してください。
@raise NotImplementedError fdatasync(2) も fsync(2) も
サポートされていない OS で発生します。
//emlist[例][ruby]{
require "tempfile"
Tempfile.open("testtmpfile") do |f|
f.print... -
IO
# flush -> self (55.0) -
IO ポートの内部バッファをフラッシュします。
IO ポートの内部バッファをフラッシュします。
このメソッドを使ったとき、即座にメタデータを更新することは保証されません(特にWindowsで)。
即座にメタデータも更新したいときは IO#fsync を使います。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX fflush(3) が失敗した場合に発生します。
//emlist[例][ruby]{
require "tempfile"
Tempfile.open("testtmpfile") do |f|
f.print "test"
File.r... -
IO
# read(length = nil , outbuf = "") -> String | nil (55.0) -
length バイト読み込んで、その文字列を返します。
length バイト読み込んで、その文字列を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
既に EOF に達していれば nil を返します。
ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。
例えば、open(空ファイル) {|f| f.read } は "" となります。
@param length 読み込むサイズを整数で指定します。
nil が指定された場合、EOF までの全てのデータを読み込んで、その文字列を返します。... -
IO
# set _ encoding(enc _ str , **opts) -> self (55.0) -
IO のエンコーディングを設定します。
IO のエンコーディングを設定します。
引数が "A:B" のようにコロンで区切られた文字列の場合は、
A を外部エンコーディング、 B を内部エンコーディングに指定します。
引数が一つで、上のような形式でない場合には、
それが外部エンコーディングと見なされます。
引数が2つの場合はそのそれぞれを外部エンコーディング、内部エンコーディング
に設定します。
キーワード引数で外部エンコーディングを内部エンコーディングに変換する際の
オプションを指定します。
詳しくは String#encode を参照してください。
@param enc_str エンコーディングを表す文字列を指定します... -
IO
# set _ encoding(ext _ enc) -> self (55.0) -
IO のエンコーディングを設定します。
IO のエンコーディングを設定します。
引数が "A:B" のようにコロンで区切られた文字列の場合は、
A を外部エンコーディング、 B を内部エンコーディングに指定します。
引数が一つで、上のような形式でない場合には、
それが外部エンコーディングと見なされます。
引数が2つの場合はそのそれぞれを外部エンコーディング、内部エンコーディング
に設定します。
キーワード引数で外部エンコーディングを内部エンコーディングに変換する際の
オプションを指定します。
詳しくは String#encode を参照してください。
@param enc_str エンコーディングを表す文字列を指定します... -
IO
# set _ encoding(ext _ enc , int _ enc , **opts) -> self (55.0) -
IO のエンコーディングを設定します。
IO のエンコーディングを設定します。
引数が "A:B" のようにコロンで区切られた文字列の場合は、
A を外部エンコーディング、 B を内部エンコーディングに指定します。
引数が一つで、上のような形式でない場合には、
それが外部エンコーディングと見なされます。
引数が2つの場合はそのそれぞれを外部エンコーディング、内部エンコーディング
に設定します。
キーワード引数で外部エンコーディングを内部エンコーディングに変換する際の
オプションを指定します。
詳しくは String#encode を参照してください。
@param enc_str エンコーディングを表す文字列を指定します... -
IO
# syswrite(string) -> Integer (55.0) -
write(2) を用いて string を出力します。 string が文字列でなければ to_s による文字列化を試みます。 実際に出力できたバイト数を返します。
write(2) を用いて string を出力します。
string が文字列でなければ to_s による文字列化を試みます。
実際に出力できたバイト数を返します。
stdio を経由しないので他の出力メソッドと混用すると思わぬ動作
をすることがあります。
@param string 自身に書き込みたい文字列を指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
//emlist[例][ruby]{
File.open("testfile", "w+") do |... -
IO
# write(str) -> Integer (55.0) -
IOポートに対して str を出力します。str が文字列でなけ れば to_s による文字列化を試みます。 実際に出力できたバイト数を返します。
IOポートに対して str を出力します。str が文字列でなけ
れば to_s による文字列化を試みます。
実際に出力できたバイト数を返します。
IO#syswrite を除く全ての出力メソッドは、最終的に
"write" という名のメソッドを呼び出すので、このメソッドを置き換える
ことで出力関数の挙動を変更することができます。
@param str 自身に書き込みたい文字列を指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
//emlist[例][ruby]... -
IO
. readlines(path , limit , opts={}) -> [String] (55.0) -
path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
テキスト読み込みメソッドとして動作します。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
opts でファイルを開くときのオプションを指定します。エンコーディングなど
を指定できます。
File.open と同様なのでそちらを参照してください。
@param path ファイル名を表す文字列か "|コ... -
IO
. readlines(path , rs = $ / , opts={}) -> [String] (55.0) -
path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
テキスト読み込みメソッドとして動作します。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
opts でファイルを開くときのオプションを指定します。エンコーディングなど
を指定できます。
File.open と同様なのでそちらを参照してください。
@param path ファイル名を表す文字列か "|コ... -
IO
. readlines(path , rs , limit , opts={}) -> [String] (55.0) -
path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
テキスト読み込みメソッドとして動作します。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
opts でファイルを開くときのオプションを指定します。エンコーディングなど
を指定できます。
File.open と同様なのでそちらを参照してください。
@param path ファイル名を表す文字列か "|コ... -
JSON
. # dump(object , io = nil , limit = nil) -> String | IO (55.0) -
与えられたオブジェクトを JSON 形式の文字列に変換してダンプします。
与えられたオブジェクトを JSON 形式の文字列に変換してダンプします。
与えられたオブジェクトを引数として JSON.#generate を呼び出します。
@param object ダンプするオブジェクトを指定します。
@param io IO のように write メソッドを実装しているオブジェクトを指定します。
@param limit 指定した場合、limit 段以上深くリンクしたオブジェクトをダンプできません。
@raise ArgumentError オブジェクトのネストの深さが limit を越えた場合に発生します。
//emlist[例][ruby]{
re... -
Kernel
. # fail -> () (55.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # fail(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (55.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # fail(message , cause: $ !) -> () (55.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # raise -> () (55.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d...