ライブラリ
- ビルトイン (19)
- forwardable (2)
-
net
/ http (3) - openssl (3)
- uri (5)
-
webrick
/ htmlutils (1)
クラス
-
OpenSSL
:: PKey :: DSA (1) -
OpenSSL
:: PKey :: RSA (1) -
OpenSSL
:: X509 :: ExtensionFactory (1) -
Thread
:: Queue (10) -
Thread
:: SizedQueue (6) -
URI
:: HTTP (1)
モジュール
- Forwardable (2)
-
Net
:: HTTPHeader (3) - URI (4)
-
WEBrick
:: HTMLUtils (1)
キーワード
- ConditionVariable (1)
- Queue (1)
- SizedQueue (1)
- cgi (1)
- clear (1)
- close (2)
- closed? (1)
- decode (1)
-
def
_ delegator (1) -
def
_ instance _ delegator (1) - deq (2)
- each (1)
-
each
_ header (1) -
each
_ value (1) - empty? (1)
- encode (1)
- escape (2)
- length (1)
- max (1)
- max= (1)
- new (1)
-
num
_ waiting (1) - pop (2)
-
request
_ uri (1) -
ruby 1
. 6 feature (1) - shift (2)
- size (1)
- unescape (1)
検索結果
先頭5件
-
OpenSSL
:: PKey :: DSA # q=(q) (54301.0) -
DSA 鍵のパラメータ q を設定します。
DSA 鍵のパラメータ q を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param q 設定する整数値 -
OpenSSL
:: PKey :: RSA # q=(new _ q) (54301.0) -
鍵の2つめの素数を設定します。
鍵の2つめの素数を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_q 設定する素数 -
OpenSSL
:: X509 :: ExtensionFactory . new(issuer _ cert=nil , subject _ cert=nil , subject _ req=nil , crl=nil) -> OpenSSL :: X509 :: ExtensionFactory (301.0) -
ExtensionFactory オブジェクトを生成します。
ExtensionFactory オブジェクトを生成します。
証明書の発行者や所有者の OpenSSL::X509::Certificate オブジェクトや
OpenSSL::X509::Request、OpenSSL::X509::CRL オブジェクトを
渡すことによって、拡張領域の中身を ExtensionFactory オブジェクトが
計算することができます。
例えば、"subjectKeyIdentifier" 拡張領域は証明書の一部のハッシュ値
を値として持ちますが、
OpenSSL::X509::Certificate オブジェクトをあらかじめ渡しておくことによって
OpenSS... -
Net
:: HTTPHeader # each {|name , val| . . . . } -> () (55.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
Net
:: HTTPHeader # each _ header {|name , val| . . . . } -> () (55.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
Net
:: HTTPHeader # each _ value {|value| . . . . } -> () (55.0) -
保持しているヘッダの値をブロックに渡し、呼びだします。
保持しているヘッダの値をブロックに渡し、呼びだします。
渡される文字列は ", " で連結したものです。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_value { |value| puts value }
# => gzip;q=1.0,deflate;q=0.6,identity;q=0.3
# => */*
# => Ruby
//} -
Thread
:: ConditionVariable (37.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
スレッドの同期機構の一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ... -
Thread
:: Queue # deq(non _ block = false) -> object (37.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue # pop(non _ block = false) -> object (37.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue # shift(non _ block = false) -> object (37.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: SizedQueue (37.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
... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (37.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # pop(non _ block = false) -> object (37.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # shift(non _ block = false) -> object (37.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
URI
:: HTTP # request _ uri -> String (37.0) -
自身の「path + '?' + query」を文字列で返します。 query が nil である場合は、自身の path を返します。
自身の「path + '?' + query」を文字列で返します。
query が nil である場合は、自身の path を返します。
path が空である場合には、path は「'/'」であるとします。
例:
require 'uri'
u = URI.parse("http://example.com/search?q=xxx")
p u.request_uri #=> "/search?q=xxx" -
WEBrick
:: HTMLUtils . # escape(string) -> String (37.0) -
指定された文字列に含まれる ", &, <, > を文字実体参照に変換した文字列を 生成して返します。
指定された文字列に含まれる ", &, <, > を文字実体参照に変換した文字列を
生成して返します。
@param string エスケープしたい文字列を指定します。
require 'webrick'
p WEBrick::HTMLUtils.escape('/?q=foo&hl=<ja>') #=> "/?q=foo&hl=<ja>" -
Forwardable
# def _ delegator(accessor , method , ali = method) -> () (19.0) -
メソッドの委譲先を設定します。
メソッドの委譲先を設定します。
@param accessor 委譲先のオブジェクト
@param method 委譲先のメソッド
@param ali 委譲元のメソッド
委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。
委譲元と委譲先のメソッド名が同じ場合は, ali を省略することが可能です。
def_delegator は def_instance_delegator の別名になります。
例:
require 'forwardable'
class MyQueue
exten... -
Forwardable
# def _ instance _ delegator(accessor , method , ali = method) -> () (19.0) -
メソッドの委譲先を設定します。
メソッドの委譲先を設定します。
@param accessor 委譲先のオブジェクト
@param method 委譲先のメソッド
@param ali 委譲元のメソッド
委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。
委譲元と委譲先のメソッド名が同じ場合は, ali を省略することが可能です。
def_delegator は def_instance_delegator の別名になります。
例:
require 'forwardable'
class MyQueue
exten... -
Thread
:: Queue (19.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
:: Queue # clear -> () (19.0) -
キューを空にします。返り値は不定です。
キューを空にします。返り値は不定です。
//emlist[例][ruby]{
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
q.clear
q.length # => 0
//} -
Thread
:: Queue # close -> self (19.0) -
キューを close します。close 済みのキューを再度 open することはできません。
キューを close します。close 済みのキューを再度 open することはできません。
close 後は以下のように動作します。
* Thread::Queue#closed? は true を返します
* Thread::Queue#close は無視されます
* Thread::Queue#enq/push/<< は ClosedQueueError を発生します
* Thread::Queue#empty? が false を返す場合は Thread::Queue#deq/pop/shift は通常通りオブジェクトを返します
また、ClosedQueueError... -
Thread
:: Queue # closed? -> bool (19.0) -
キューが close されている時に true を返します。
キューが close されている時に true を返します。
//emlist[例][ruby]{
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.closed? # => false
q.close
q.closed? # => true
//} -
Thread
:: Queue # empty? -> bool (19.0) -
キューが空の時、真を返します。
キューが空の時、真を返します。
//emlist[例][ruby]{
q = Queue.new
q.empty? # => true
q.push(:resource)
q.empty? # => false
//} -
Thread
:: Queue # length -> Integer (19.0) -
キューの長さを返します。
キューの長さを返します。
//emlist[例][ruby]{
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
//} -
Thread
:: Queue # num _ waiting -> Integer (19.0) -
キューを待っているスレッドの数を返します。
キューを待っているスレッドの数を返します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(1)
q.push(1)
t = Thread.new { q.push(2) }
sleep 0.05 until t.stop?
q.num_waiting # => 1
q.pop
t.join
//} -
Thread
:: Queue # size -> Integer (19.0) -
キューの長さを返します。
キューの長さを返します。
//emlist[例][ruby]{
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
//} -
Thread
:: SizedQueue # close -> self (19.0) -
キューを close します。詳しくは Thread::Queue#close を参照してください。
キューを close します。詳しくは Thread::Queue#close を参照してください。
Thread::Queue とはキューにオブジェクトを追加するスレッドの動作が
異なります。キューにオブジェクトを追加するスレッドを待機している場合は
ClosedQueueError が発生して中断されます。
//emlist[例][ruby]{
q = SizedQueue.new(4)
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.closed? # => false
q.close
q.c... -
Thread
:: SizedQueue # max -> Integer (19.0) -
キューの最大サイズを返します。
キューの最大サイズを返します。
//emlist[例][ruby]{
q = SizedQueue.new(4)
q.max # => 4
//} -
Thread
:: SizedQueue # max=(n) (19.0) -
キューの最大サイズを設定します。
キューの最大サイズを設定します。
@param n キューの最大サイズを指定します。
//emlist[例][ruby]{
q = SizedQueue.new(4)
q.max # => 4
q.max = 5
q.max # => 5
//} -
URI
. decode(str) -> String (19.0) -
URI 文字列をデコードした文字列を返します。
URI 文字列をデコードした文字列を返します。
このメソッドは obsolete です。
代わりに
CGI.unescape,
URI.decode_www_form,
URI.decode_www_form_component
などの使用を検討してください。
例:
require 'uri'
puts URI.unescape('http://images.google.co.jp/images?q=%A5%E2%A5%CA%A5%EA%A5%B6&ie=EUC-JP')
#=> "http://images.google.co.jp/images?q=モナリザ&ie=... -
URI
. encode(str , unsafe = URI :: UNSAFE) -> String (19.0) -
URI 文字列をエンコードした文字列を返します。
URI 文字列をエンコードした文字列を返します。
このメソッドは obsolete です。
代わりに
ERB::Util.#url_encode,
CGI.escape,
URI.encode_www_form_component,
WEBrick::HTTPUtils.#escape_form,
WEBrick::HTTPUtils.#escape
などの使用を検討してください。
詳細は 29293 からのスレッドを参照してください。
例:
require 'uri'
p URI.escape('http://images.google.co.jp/images?q=モナリザ... -
URI
. escape(str , unsafe = URI :: UNSAFE) -> String (19.0) -
URI 文字列をエンコードした文字列を返します。
URI 文字列をエンコードした文字列を返します。
このメソッドは obsolete です。
代わりに
ERB::Util.#url_encode,
CGI.escape,
URI.encode_www_form_component,
WEBrick::HTTPUtils.#escape_form,
WEBrick::HTTPUtils.#escape
などの使用を検討してください。
詳細は 29293 からのスレッドを参照してください。
例:
require 'uri'
p URI.escape('http://images.google.co.jp/images?q=モナリザ... -
URI
. unescape(str) -> String (19.0) -
URI 文字列をデコードした文字列を返します。
URI 文字列をデコードした文字列を返します。
このメソッドは obsolete です。
代わりに
CGI.unescape,
URI.decode_www_form,
URI.decode_www_form_component
などの使用を検討してください。
例:
require 'uri'
puts URI.unescape('http://images.google.co.jp/images?q=%A5%E2%A5%CA%A5%EA%A5%B6&ie=EUC-JP')
#=> "http://images.google.co.jp/images?q=モナリザ&ie=... -
cgi (19.0)
-
CGI プログラムの支援ライブラリです。
CGI プログラムの支援ライブラリです。
CGI プロトコルの詳細については以下の文書を参照してください。
* https://tools.ietf.org/html/draft-coar-cgi-v11-03
* 3875: The Common Gateway Interface (CGI) Version 1.1
* https://www.w3.org/CGI/
=== 使用例
==== フォームフィールドの値を得る
//emlist[][ruby]{
require "cgi"
cgi = CGI.new
values = cgi['field_name'] ... -
ruby 1
. 6 feature (19.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 がなくなっ
ていま...