ライブラリ
- ビルトイン (4)
- csv (1)
- date (2)
- delegate (1)
- digest (1)
-
drb
/ acl (1) - fiddle (1)
- ipaddr (1)
-
irb
/ cmd / load (1) -
irb
/ ext / loader (1) -
irb
/ input-method (1) -
net
/ http (4) - openssl (3)
- optparse (1)
- pathname (1)
- psych (1)
-
rdoc
/ markup (1) - rexml (1)
-
rexml
/ document (5) -
rinda
/ rinda (1) - stringio (1)
- strscan (1)
- weakref (1)
-
webrick
/ httpauth / basicauth (1) -
webrick
/ httpauth / digestauth (1) -
webrick
/ httpauth / htdigest (1) -
webrick
/ httpauth / htpasswd (1) -
webrick
/ httpservlet / abstract (1) -
webrick
/ httpstatus (3) - win32ole (1)
- zlib (1)
キーワード
- ACL (1)
- AbstractServlet (1)
- Base (1)
- BasicAuth (1)
- BlockCaller (1)
- CSV (1)
- ConditionVariable (1)
- DSA (1)
- Date (1)
- DateTime (1)
- Default (1)
- DigestAuth (1)
- Emitter (1)
- ExtensionFactory (1)
- ExternalEntity (1)
- GzipReader (1)
- HTTPNetworkAuthenticationRequired (1)
- HTTPPaymentRequired (1)
- HTTPProxyAuthenticationRequired (1)
- HTTPUpgradeRequired (1)
- Htdigest (1)
- Htpasswd (1)
- IPAddr (1)
- LengthRequired (1)
- LoadAbort (1)
- LoadError (1)
- Markup (1)
- NotationDecl (1)
- OptionParser (1)
- ParseException (1)
- Pathname (1)
- PaymentRequired (1)
- Pretty (1)
- ProxyAuthenticationRequired (1)
- Queue (1)
- RSA (1)
- ReadlineInputMethod (1)
- SimpleDelegator (1)
- SizedQueue (1)
- StringIO (1)
- StringScanner (1)
- Template (1)
- Transitive (1)
-
WIN32OLE
_ VARIABLE (1) - WeakRef (1)
検索結果
先頭5件
-
IRB
:: ExtendCommand :: Require (63052.0) -
irb 中の irb_require コマンドのための拡張を定義したクラスです。
irb 中の irb_require コマンドのための拡張を定義したクラスです。 -
WEBrick
:: HTTPStatus :: ProxyAuthenticationRequired (45004.0) -
HTTP のステータスコード 407 Proxy Authentication Required を表すクラスです。
HTTP のステータスコード 407 Proxy Authentication Required を表すクラスです。 -
Net
:: HTTPNetworkAuthenticationRequired (36004.0) -
HTTP レスポンス 511 (Network Authentication Required) を表現するクラスです。
HTTP レスポンス 511 (Network Authentication Required) を表現するクラスです。
詳しくは 6585 を見てください。 -
Net
:: HTTPPaymentRequired (36004.0) -
HTTP レスポンス 402 (Payment Required) を表現するクラスです。
HTTP レスポンス 402 (Payment Required) を表現するクラスです。
詳しくは 7231 Section 6.5.2 を見てください。 -
Net
:: HTTPProxyAuthenticationRequired (36004.0) -
HTTP レスポンス 407 (Proxy Authentication Required) を表現するクラスです。
...HTTP レスポンス 407 (Proxy Authentication Required) を表現するクラスです。
詳しくは 7235 Section 3.2 を見てください。... -
Net
:: HTTPUpgradeRequired (36004.0) -
HTTP レスポンス 426 (Upgrade Required) を表現するクラスです。
HTTP レスポンス 426 (Upgrade Required) を表現するクラスです。
詳しくは 7231 Section 6.5.15 を見てください。 -
WEBrick
:: HTTPStatus :: PaymentRequired (36004.0) -
-
WEBrick
:: HTTPAuth :: BasicAuth (27022.0) -
HTTP の Basic 認証のためのクラスです。
HTTP の Basic 認証のためのクラスです。
例
require 'webrick'
realm = "WEBrick's realm"
srv = WEBrick::HTTPServer.new({ :BindAddress => '127.0.0.1', :Port => 10080})
htpd = WEBrick::HTTPAuth::Htpasswd.new('dot.htpasswd')
htpd.set_passwd(nil, 'username', 'supersecretpass')
authenticator =... -
WEBrick
:: HTTPAuth :: DigestAuth (27022.0) -
HTTP の Digest 認証のためのクラスです。
HTTP の Digest 認証のためのクラスです。
2617 も参照してください。
例:
require 'webrick'
config = { :Realm => 'DigestAuth example realm' }
htdigest = WEBrick::HTTPAuth::Htdigest.new 'my_password_file'
htdigest.set_passwd config[:Realm], 'username', 'password'
htdigest.flush
config[:UserDB] = htdigest
dige... -
WEBrick
:: HTTPStatus :: LengthRequired (27004.0) -
HTTP のステータスコード 411 Length Required を表すクラスです。
HTTP のステータスコード 411 Length Required を表すクラスです。 -
Thread
:: ConditionVariable (18148.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...が空になった場合、
あるいは満タンになった場合に Condition Variable を使って wait しています。
require 'thread'
class TinyQueue
def initialize(max=2)
@max = max
@full = ConditionVariable.new
@empty = ConditionVariable.new
@mutex = Mut... -
RDoc
:: Markup (18112.0) -
RDoc 形式のドキュメントを目的の形式に変換するためのクラスです。
...フォーマットを行うようにパーサを拡張する事もできます。
例:
require 'rdoc/markup'
require 'rdoc/markup/to_html'
class WikiHtml < RDoc::Markup::ToHtml
# WikiWord のフォントを赤く表示。
def handle_special_WIKIWORD(special)
"<font color=red>... -
StringScanner (18112.0)
-
StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。
StringScanner は文字列スキャナクラスです。
簡単に高速なスキャナを記述できます。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('This is an example string')
s.eos? #=> false
p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/\s+/) #=> nil
p s.scan(/\w+/) #=> "is"... -
Date (18076.0)
-
日付だけでなく時刻も扱える Date のサブクラス DateTime も利用できます。
日付だけでなく時刻も扱える Date のサブクラス DateTime も利用できます。
=== 簡単なつかいかた
//emlist[例][ruby]{
require 'date'
a = Date.new(1993, 2, 24)
b = Date.parse('1993-02-24')
b += 10
b - a #=> 10
b.year #=> 1993
b.strftime('%a') #=> "Sat"
yesterday = Date.today - 1
//}
=== 用語の定義
いくつか用語の定義は、8601、および X... -
DateTime (18076.0)
-
日付だけでなく時刻も扱える Date のサブクラスです。
日付だけでなく時刻も扱える Date のサブクラスです。
DateTime は deprecated とされているため、
Timeを使うことを推奨します。
=== 簡単なつかいかた
require 'date'
a = DateTime.new(1993, 2, 24, 12, 30, 45)
b = DateTime.parse('1993-02-24T12:30:45')
b += 10
b - a #=> 10
b.year #=> 1993
b.strftime('%a') #=> "Sat"
yes... -
OptionParser (18076.0)
-
コマンドラインのオプションを取り扱うためのクラスです。
コマンドラインのオプションを取り扱うためのクラスです。
オプションが指定された時に呼ばれるブロックを
OptionParser#on メソッドで登録していきます。
つまり、OptionParser を使う場合、基本的には
(1) OptionParser オブジェクト opt を生成する。
(2) オプションを取り扱うブロックを opt に登録する。
(3) opt.parse(ARGV) でコマンドラインを実際に parse する。
というような流れになります。
//emlist[][ruby]{
require "optparse"
ProgramConfig = Ha... -
REXML
:: ParseException (18058.0) -
XML のパースに失敗したときに生じる例外です。
XML のパースに失敗したときに生じる例外です。
//emlist[][ruby]{
require 'rexml/document'
begin
REXML::Document.new("<a>foo\n</b></a> ")
rescue REXML::ParseException => ex
ex.position # => 16
ex.line # => 2
ex.context # => [16, 2, 2]
end
//} -
IRB
:: LoadAbort (18052.0) -
irb 中で require などを中断した場合に発生する例外です。
irb 中で require などを中断した場合に発生する例外です。 -
IRB
:: ReadlineInputMethod (18052.0) -
readline を用いた標準入力からの入力を表すクラスです。ライブラリ内部で使 用します。readline の require に失敗した場合は定義されません。
readline を用いた標準入力からの入力を表すクラスです。ライブラリ内部で使
用します。readline の require に失敗した場合は定義されません。 -
LoadError (18052.0)
-
Kernel.#require や Kernel.#load が失敗したときに発生します。
Kernel.#require や Kernel.#load が失敗したときに発生します。 -
Digest
:: Base (18040.0) -
すべての Digest::XXX クラスの基底クラスです。
すべての Digest::XXX クラスの基底クラスです。
例えば、MD5 値を得るには以下のようにします。
require 'digest/md5'
p Digest::MD5.hexdigest('abc') #=> '900150983cd24fb0d6963f7d28e17f72'
p Digest::MD5.file('ruby-1.8.5.tar.gz').to_s #=> '3fbb02294a8ca33d4684055adba5ed6f'
すべての Digest::XXX クラスは以下の共通インタフェースを持ちます。 -
OpenSSL
:: X509 :: ExtensionFactory (18040.0) -
OpenSSL::X509::Extension を簡便に生成するための クラスです。
OpenSSL::X509::Extension を簡便に生成するための
クラスです。
例
require 'openssl'
# ca_cert: CA の証明書オブジェクト
# req: CSR オブジェクト
# newcert: 新たに生成する証明書のオブジェクト
ca_cert = OpenSSL::X509::Certificate.new(File.read('ca_cert.pem'))
req = OpenSSL::X509::Request.new(File.read('req.pem'))
newcert = OpenSSL::X509::C... -
REXML
:: Formatters :: Default (18040.0) -
XMLドキュメントを(文字列として)出力するクラスです。
XMLドキュメントを(文字列として)出力するクラスです。
REXML::Formatters::Pretty と
異なりテキストの改行や空白を修正せずにそのまま出力します。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/default'
doc = REXML::Document.new <<EOS
<root>
<children>
<grandchildren/>
</children>
</root>
EOS
default_formatter = REXML::Formatters::... -
REXML
:: Formatters :: Transitive (18040.0) -
XMLドキュメントをテキストの内容を変えずに 多少の整形を加えて出力するクラスです。
XMLドキュメントをテキストの内容を変えずに
多少の整形を加えて出力するクラスです。
これが有用な場合はあまりないでしょう。
整形されていない XML を整形したいが、
テキストの空白は改行は変えたくない場合には役にたつかもしれません。
ただ、ほとんどの場合は奇妙な出力結果になるでしょう。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/transitive'
doc = REXML::Document.new <<EOS
<root><children>
<grandchildren foo='ba... -
ACL (18022.0)
-
drb で用いる ACL(Access Control List)クラス。
drb で用いる ACL(Access Control List)クラス。
Access control list は "allow" と "deny" の2つからなります。
"all" や "*" という文字列は任意のアドレスにマッチします。
IPAddr が取り扱える任意のアドレス/アドレスマスクを
使うことができます。
ACLのエントリーは、以下の例に示すように、
"allow_or_deny", "addr1",
"allow_or_deny", "addr2",
:
という文字列配列で表現されます。
@see DRb.#install_acl, DRb.#st... -
Fiddle
:: Closure :: BlockCaller (18022.0) -
Ruby のブロックをラップしたコールバック関数を表すクラスです。
Ruby のブロックをラップしたコールバック関数を表すクラスです。
Ruby のブロックを C の関数ポインタとして表現するためのクラスです。
require 'fiddle'
include Fiddle
libc = Fiddle.dlopen("/lib/libc.so.6")
qs = Fiddle::Function.new(libc["qsort"],
[TYPE_VOIDP, TYPE_INT, TYPE_INT, TYPE_VOIDP],
TYP... -
IPAddr (18022.0)
-
IP アドレスを扱うのためのクラスです。
IP アドレスを扱うのためのクラスです。
例:
require 'ipaddr'
ipaddr1 = IPAddr.new("3ffe:505:2::1")
p ipaddr1 # => #<IPAddr: IPv6:3ffe:0505:0002:0000:0000:0000:0000:0001/ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff>
ipaddr3 = IPAddr.new("192.168.2.0/24")
p ipaddr3 # => #<IPAddr: IPv4:192.168.2.0/255.255... -
OpenSSL
:: PKey :: DSA (18022.0) -
DSA 公開鍵暗号クラス
DSA 公開鍵暗号クラス
実際には、DSA は署名のためのアルゴリズムであり、暗号化はできません。
以下は、data に署名し、署名をもとに data を検証する簡単な例です。
require "openssl"
dsa512 = OpenSSL::PKey::DSA.new(512)
data = 'hoge'
sign = dsa512.sign('dss1', data)
p dsa512.verify('dss1', sign, data) -
OpenSSL
:: PKey :: RSA (18022.0) -
RSA 暗号鍵のクラスです。
RSA 暗号鍵のクラスです。
通常このクラスで利用するのは、
OpenSSL::PKey::RSA.generate, OpenSSL::PKey::RSA.new,
OpenSSL::PKey::RSA#public?, OpenSSL::PKey::RSA#private?,
OpenSSL::PKey::RSA#public_key, OpenSSL::PKey::RSA#to_text,
OpenSSL::PKey::RSA#to_pem, OpenSSL::PKey::RSA#to_der
のいずれかでしょう。これ以外のメソッドを利用するときは
RSA についてよく理解し、必要な場... -
Pathname (18022.0)
-
パス名をオブジェクト指向らしく扱うクラスです。
パス名をオブジェクト指向らしく扱うクラスです。
Pathname オブジェクトはパス名を表しており、ファイルやディレクトリそのものを表してはいません。
当然、存在しないファイルのパス名も扱えます。
絶対パスも相対パスも扱えます。
Pathname オブジェクトは immutable であり、自身を破壊的に操作するメソッドはありません。
Pathname のインスタンスメソッドには、ディレクトリのパスを返す Pathname#dirname のように、
文字列操作だけで結果を返すものもあれば、ファイルの中身を読み出す Pathname#read のように
ファイルシステムにアクセスするも... -
REXML
:: ExternalEntity (18022.0) -
DTD 内の宣言でパラメータ実体参照を使って宣言が されているものを表わすクラスです。
DTD 内の宣言でパラメータ実体参照を使って宣言が
されているものを表わすクラスです。
例えば、以下の DTD 宣言における %HTMLsymbol が
それにあたります。
<!ENTITY % HTMLsymbol PUBLIC
"-//W3C//ENTITIES Symbols for XHTML//EN"
"xhtml-symbol.ent">
%HTMLsymbol;
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Document.new(<<EOS).doctype
<!DO... -
REXML
:: NotationDecl (18022.0) -
DTD の記法宣言を表すクラスです。
DTD の記法宣言を表すクラスです。
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Document.new(<<EOS).doctype
<!DOCTYPE foo [
<!NOTATION type-image-svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!NOTATION type-image-gif PUBLIC "image/gif">... -
Rinda
:: Template (18022.0) -
タプルのマッチングのためのクラスです。 ユーザがこのクラスを直接使うことはありません。
タプルのマッチングのためのクラスです。
ユーザがこのクラスを直接使うことはありません。
=== 例
require 'rinda/rinda'
template = Rinda::Template.new(['abc', nil, nil])
template.match(['abc', 2, 5]) # => true
template.match(['hoge', 2, 5]) # => false
template = Rinda::Template.new([String, Integer, nil])
template.match(['abc', 2, 5... -
SimpleDelegator (18022.0)
-
Delegator クラスを継承し、シンプルなメソッド委譲を実現した具象クラス。
Delegator クラスを継承し、シンプルなメソッド委譲を実現した具象クラス。
委譲先に指定されたオブジェクトへメソッドの実行を委譲します。
例:
//emlist{
require 'delegate'
foo = Object.new
def foo.test
p 25
end
foo2 = SimpleDelegator.new(foo)
foo2.test # => 25
//} -
WEBrick
:: HTTPAuth :: Htpasswd (18022.0) -
Apache の htpasswd 互換のクラスです。 .htpasswd ファイルを新しく作成することも出来ます。 htpasswd -m (MD5) や -s (SHA) で作成された .htpasswd ファイルには対応していません。
Apache の htpasswd 互換のクラスです。
.htpasswd ファイルを新しく作成することも出来ます。
htpasswd -m (MD5) や -s (SHA) で作成された .htpasswd ファイルには対応していません。
例
require 'webrick'
include WEBrick
htpd = HTTPAuth::Htpasswd.new('dot.htpasswd')
htpd.set_passwd(nil, 'username', 'supersecretpass')
htpd.flush
htpd2 = HTTPAuth::Htpassw... -
WEBrick
:: HTTPServlet :: AbstractServlet (18022.0) -
サーブレットの抽象クラスです。実装は AbstractServlet のサブクラスで行います。
サーブレットの抽象クラスです。実装は AbstractServlet のサブクラスで行います。
サーブレットは以下のように使われます。WEBrick::HTTPServlet::CGIHandler は
webrick/httpservlet/cgihandler で提供されているサーブレットです。
CGIHandler は AbstractServlet のサブクラスです。
require 'webrick'
srv = WEBrick::HTTPServer.new({ :DocumentRoot => './',
... -
WIN32OLE
_ VARIABLE (18022.0) -
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
OLEオートメーションサーバは、定数(WIN32OLE.const_load)、メソッ
ド/プロパティ(WIN32OLE_METHOD)、イベント(WIN32OLE_EVENT)
のほかに変数をクライアントへ提供できます。WIN32OLE_VARIABLEクラスは、サー
バが提供する変数の情報をオブジェクト化します。変数情報にはCOMで決められ
た構造体やユーザ定義型のフィールド情報などがありますが、最も良く利用さ
れるのはenum(列挙型)のメンバ情報です。enumのメンバは定数として利用で
きます。
WIN32OL... -
WeakRef (18022.0)
-
weak reference を実現するクラスです。
weak reference を実現するクラスです。
WeakRef オブジェクトは与えられたオブジェクトをポイントしますが、
ポイント先のオブジェクトは GC される可能性があります。
アクセスしようとしたときにオブジェクトが GC されていれば
WeakRef::RefError が発生します。
delegate も参照してください。
=== サンプルコード
require 'weakref'
foo = Object.new
ref = WeakRef.new(foo)
ref.some_method_of_foo -
Zlib
:: GzipReader (18022.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... -
REXML
:: Formatters :: Pretty (9040.0) -
XMLドキュメントを(文字列として)見た目良く出力するクラスです。
XMLドキュメントを(文字列として)見た目良く出力するクラスです。
REXML::Formatters::Default と
異なり見た目のためテキストの改行や空白を修正して出力します。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/pretty'
doc = REXML::Document.new <<EOS
<root>
<children>
<grandchildren foo='bar'/>
</children>
</root>
EOS
pretty_formatter = REXM... -
WEBrick
:: HTTPAuth :: Htdigest (9040.0) -
Apache の htdigest 互換のクラス。
Apache の htdigest 互換のクラス。
例
require 'webrick'
include WEBrick
htd = HTTPAuth::Htdigest.new('dot.htdigest')
htd.set_passwd('realm', 'username', 'supersecretpass')
htd.flush
htd2 = HTTPAuth::Htdigest.new('dot.htdigest')
p htd2.get_passwd('realm', 'username', false) == '65fe03e5b0a199462186848... -
Thread
:: Queue (9022.0) -
Queue はスレッド間の FIFO(first in first out) の通信路です。ス レッドが空のキューを読み出そうとすると停止します。キューになんら かの情報が書き込まれると実行は再開されます。
Queue はスレッド間の FIFO(first in first out) の通信路です。ス
レッドが空のキューを読み出そうとすると停止します。キューになんら
かの情報が書き込まれると実行は再開されます。
最大サイズが指定できる Queue のサブクラス Thread::SizedQueue も提供されています。
=== 例
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resou... -
Thread
:: SizedQueue (9022.0) -
サイズの最大値を指定できる Thread::Queue です。
サイズの最大値を指定できる Thread::Queue です。
=== 例
283 より。q をサイズ 1 の SizedQueue オブジェクトに
することによって、入力される行と出力される行が同じ順序になります。
q = [] にすると入力と違った順序で行が出力されます。
require 'thread'
q = SizedQueue.new(1)
th = Thread.start {
while line = q.pop
print line
end
}
while l = gets
q.push(l)
end
... -
CSV (130.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... -
Psych
:: Emitter (76.0) -
Psych::Parser でパースし、生じたイベントから YAML ドキュメントを再構築するようなハンドラです。
Psych::Parser でパースし、生じたイベントから
YAML ドキュメントを再構築するようなハンドラです。
以下の例では STDIN から YAML ドキュメントを入力し、
再構築した YAML ドキュメントを STDERR に出力します。
parser = Psych::Parser.new(Psych::Emitter.new($stderr))
parser.parse($stdin)
また、以下のようにイベントを手動で発生させることで
YAML ドキュメントを構築させることもできます。
各メソッドの意味については Psych::Handler を参照してください... -
StringIO (58.0)
-
文字列に IO と同じインタフェースを持たせるためのクラスです。
文字列に IO と同じインタフェースを持たせるためのクラスです。
//emlist[例][ruby]{
require "stringio"
sio = StringIO.new("hoge", 'r+')
p sio.read #=> "hoge"
sio.rewind
p sio.read(1) #=> "h"
sio.write("OGE")
sio.rewind
p sio.read #=> "hOGE"
//}
=== 例外
StringIO オブジェクトは大抵の場合 IO オブジェクトと同...