TABLE OF CONTENTS

添付ライブラリ

Ruby は、ライブラリによるクラスやモジュール、メソッドの追加などの拡張 を行うことができます。以下は、標準で添付・配布されているライブラリの一 覧です。ライブラリの読み込みには require を使用します。

添付ライブラリ一覧

テキスト / ファイルフォーマット / ファイル / ネットワーク / 入出力 / 文字コード / 数学 / データベース / 画面制御・CUI / GUI / 日付・時間 / マルチスレッド・同期 / Unix / MS Windows / GC / デザインパターン / 開発ツール / コマンドライン / その他

テキスト

ファイルフォーマット

ファイル

ネットワーク

入出力

  • fcntl fcntl(2) で使用する定数を集めたモジュール
  • open3 外部プログラムと標準入力・標準出力・標準エラー出力で通信するライブラリ
  • readbytes IO に指定した長さを確実に読むメソッドを追加するライブラリ
  • scanf C の scanf のようなライブラリ ruby 1.8 feature
  • io/nonblock IO クラスの拡張 (nonblockモードに関するメソッドの追加) ruby 1.8 feature
  • io/wait IO クラスの拡張 (IO の入力待ちを行うメソッドの追加) ruby 1.8 feature

文字コード

  • iconv 文字列エンコーディング変換ライブラリ ruby 1.7 feature
  • jcode Stringクラスを日本語対応に変更する
  • kconv 漢字コード変換
  • nkf 日本語文字コードエンコーディング変換

数学

データベース

  • dbm ndbm をハッシュのように使うためのライブラリ
  • gdbm gdbm (GNU dbm) をハッシュのように使うためのライブラリ
  • sdbm sdbm ハッシュライブラリ
  • pstore オブジェクト永続化

画面制御・CUI

  • curses 端末操作ライブラリ curses のインターフェイス
  • expect 対話プログラムをスクリプトから制御する
  • pty 疑似端末(Pseudo tTY)を扱うモジュール
  • readline GNU Readline インタフェース
  • shell シェルに似たインターフェースを提供するライブラリ

GUI

  • tk Tcl/Tk ライブラリ

日付・時間

マルチスレッド・同期

  • thread Mutex, Queue などのスレッド関連ユーティリティ
  • timeout タイムアウトを行うメソッド timeout
  • monitor モニタライブラリ (並行処理プリミティブ)
  • mutex_m Mutexのモジュール版
  • sync Mix-inにより再入可能なreader/writerロック機能を提供するライブラリ
  • thwait thread synchronization class

Unix

  • etc /etc/passwd などの情報を取得するライブラリ
  • syslog UNIXのsyslogのラッパーモジュール ruby 1.6 feature

MS Windows

GC

  • weakref GC される「弱い」リファレンスを作成する
  • finalize オブジェクトがGCされる時にある依存オブジェクトに対してメッセージを送るライブラリ

デザインパターン

  • delegate 委譲を支援するクラス
  • forwardable クラスに対してメソッドの委譲機能を定義するライブラリ
  • observable Observer パターンの Ruby 実装
  • singleton Singleton パターンの Ruby 実装

開発ツール

コマンドライン

その他

obsolete

  • Env このライブラリはobsoleteです
  • importenv 環境変数をグローバル変数で操作
  • cgi-lib このライブラリはobsoleteです(cgiを使ってください)
  • date2 このライブラリはobsoleteです(dateを使ってください)
  • getopts コマンドラインオプションの解析
  • parsearg コマンドラインオプションの解析(getoptsも参照)
  • md5 このライブラリはobsoleteです(digest/md5を使ってください)
  • sha1 このライブラリはobsoleteです(digest/sha1を使ってください)
  • ftools 1.8 以降では、ftools の利用は推奨しません。fileutilsを使ってください。
  • base64 Base64 エンコーディングを扱う操作を集めたモジュール (String#unpackArray#packで同等の処理ができます。packテンプレート文字列の'm'、'M'を参照してください)
  • final このライブラリはobsoleteです(本体組み込みになりました。1.8 ではこのライブラリはなくなりました)
  • ftplib このライブラリはobsoleteです(代わりに net/ftp を使用します。1.8 ではこのライブラリはなくなりました)
  • telnet このライブラリはobsoleteです(net/telnetを使ってください。1.8 ではこのライブラリはなくなりました)