種類
- インスタンスメソッド (159)
- 文書 (48)
- 特異メソッド (22)
- ライブラリ (11)
ライブラリ
- ビルトイン (5)
-
net
/ http (110) - optparse (44)
-
rdoc
/ markup (11) - socket (11)
クラス
- Module (5)
-
Net
:: HTTP (110) - OptionParser (44)
-
RDoc
:: Markup (11) - UNIXServer (11)
キーワード
-
NEWS for Ruby 3
. 0 . 0 (4) -
accept
_ nonblock (11) -
add
_ special (11) - cgi (11)
- get (22)
- get2 (22)
- post2 (22)
- reject (22)
-
request
_ get (22) -
request
_ post (22) -
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 2 feature (11) -
ruby 1
. 8 . 4 feature (11) -
ruby 1
. 9 feature (11) -
ruby2
_ keywords (5)
検索結果
先頭5件
-
OptionParser
# accept(klass , pat = / . * / ) {|str| . . . } -> () (21141.0) -
OptionParser.accept と同様ですが、 登録したブロックはレシーバーに限定されます。
...OptionParser.accept と同様ですが、
登録したブロックはレシーバーに限定されます。
@param klass クラスオブジェクトを与えます。
@param pat match メソッドを持ったオブジェクト(Regexp オブジェクトなど)を与えます。
//emlist[例][rub......y]{
require "optparse"
require "time"
opts = OptionParser.new
opts.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
opts.on("-t", "--time [TIME]", Time) do |time|
p time.class # => Time
end
opts.parse!(ARGV)
//}... -
OptionParser
. accept(klass , pat = / . * / ) {|str| . . . } -> () (21131.0) -
オプションの引数を文字列から Ruby のオブジェクトに変換するための ブロックを登録します。すべての OptionParser インスタンスに共通です。
...ックを登録します。すべての OptionParser インスタンスに共通です。
ブロックには、文字列として与えられるオプションの引数から klass のインスタンスを生成して返すものを指定します。
OptionParser#on で klass を指定した場合......この accept で登録したブロックで
klass のインスタンスに変換されてから、OptionParser#on メソッドで登録したブロックに渡されます。
//emlist[][ruby]{
require "optparse"
require "time"
OptionParser.accept(Time) do |s,|
begin
Time.parse(s) if s
res......raise OptionParser::InvalidArgument, s
end
end
opts = OptionParser.new
opts.on("-t", "--time [TIME]", Time) do |time|
p time.class #=> Time
end
opts.parse!(ARGV)
//}
いくつかのクラスに対しては変換用のブロックがデフォルトで登録されて
います。OptionPars... -
UNIXServer
# accept _ nonblock -> UnixSocket (9253.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
...グモードに設定した後、
accept(2) を呼び出します。
接続した
UNIXSocket のインスタンスを返します。
accept(2) がエラーになった場合、Socket#accept と同じ例外が
発生します。
Errno::EWOULDBLOCK, Errno::EAGAIN,
Errno::ECONNABORTED, Errno::EPROT...... IO::WaitReadable が extend
されます。それを利用してリトライ可能な例外を掴まえることができます。
require 'socket'
serv = UNIXServer.new("/tmp/sock")
begin # emulate blocking accept
sock = serv.accept_nonblock
rescue IO::WaitReadable, Errno::EINTR
I......O.select([serv])
retry
end
# sock is an accepted socket.
@see UNIXServer#accept... -
RDoc
:: Markup # add _ special(pattern , name) -> () (6118.0) -
pattern で指定した正規表現にマッチする文字列をフォーマットの対象にしま す。
...ttern で指定した正規表現にマッチする文字列をフォーマットの対象にしま
す。
例えば WikiWord のような、SM::SimpleMarkup#add_word_pair、
SM::SimpleMarkup#add_html でフォーマットできないものに対して使用
します。
@param pattern 正規表......require 'rdoc/markup/simple_markup'
require 'rdoc/markup/simple_markup/to_html'
class WikiHtml < SM::ToHtml
def handle_special_WIKIWORD(special)
"<font color=red>" + special.text + "</font>"
end
end
m = SM::SimpleMarkup.new
m.add_special(/\b([A-Z][a-z]+[A-Z]\w+)/, :WIKIWORD......)
h = WikiHtml.new
puts m.convert(input_string, h)
変換時に実際にフォーマットを行うには SM::ToHtml#accept_special_<name で指定した名前>
のように、フォーマッタ側でも操作を行う必要があります。... -
cgi (6102.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 'pstore'
db = PStore.new("query.db")
db.transaction do
db["params"] = cgi.params
end
# 復帰
require 'pstore'
db = PStore.new("query.db")
db.transaction do
cgi.params = db["params"]
end
//}
ただし、PStore は Ruby の......list[][ruby]{
value = cgi.raw_cookie # ENV["HTTP_COOKIE"]
value = cgi.raw_cookie2 # ENV["HTTP_COOKIE2"]
//}
最後に、以下の HTTP 関連の環境変数は HTTP_ を除いた部分を downcase
したメソッド名が定義されています。
//emlist[例][ruby]{
value = cgi.accept... -
OptionParser
# reject(klass) -> () (3046.0) -
OptionParser#accept で登録したクラスとブロックを 自身から削除します。
...tionParser#accept で登録したクラスとブロックを
自身から削除します。
@param klass 自身から削除したいクラスを指定します。
//emlist[例][ruby]{
require "optparse"
require "time"
def parse(option_parser)
option_parser.on("-t", "--time [TIME]", Time) do |ti......me|
p time.class
end
option_parser.parse(ARGV)
end
opts = OptionParser.new
opts.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
parse(opts) # => Time
opts.reject(Time)
parse(opts) # => unsupported argument type: Time (Argume... -
OptionParser
. reject(klass) -> () (3046.0) -
OptionParser.accept メソッドで登録したブロックを削除します。
...OptionParser.accept メソッドで登録したブロックを削除します。
@param klass 削除したいクラスオブジェクトを指定します。
//emlist[例][ruby]{
require "optparse"
require "time"
def parse(option_parser)
option_parser.on("-t", "--time [TIME]", Time) do |time|......p time.class
end
option_parser.parse(ARGV)
end
OptionParser.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
opts1 = OptionParser.new
parse(opts1) # => Time
OptionParser.reject(Time)
opts2 = OptionParser.new
parse(opts2) # =>......unsupported argument type: Time (ArgumentError)
//}... -
ruby 1
. 6 feature (1356.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) ->......rityError)
=> ruby 1.6.7 (2002-07-30) [i586-linux]
: 2002-05-20 IO#close
双方向のパイプの dup を close_write するとエラーになっていました。
((<ruby-dev:17155>))
open("|-","r+") {|f|
if f
f.dup.close_write
else
sleep 1
end......0-05) [i586-linux]
: UNIXSocket#addr
UNIXSocket#addr がゴミを返していました(BSD の場合?)。
((<ruby-bugs-ja:PR#85>))
# server
require 'socket'
File.unlink("/tmp/sss")
sock = UNIXServer.new("/tmp/sss").accept
# client
require 'so... -
Net
:: HTTP # get(path , header = nil , dest = nil) -> Net :: HTTPResponse (212.0) -
サーバ上の path にあるエンティティを取得し、 Net::HTTPResponse のインスタンスとして返します。
...し、
Net::HTTPResponse のインスタンスとして返します。
header が nil
でなければ、リクエストを送るときにその内容を HTTP ヘッダとして
送ります。 header は { 'Accept' = > '*/*', ... } という
形のハッシュでなければいけません。
ブ......となります。
//emlist[例][ruby]{
# net/http version 1.1
response, body = http.get( '/index.html' )
# net/http version 1.2
response = http.get('/index.html')
# compatible in both version
response , = http.get('/index.html')
response.body
# compatible, using block
File.open('save.txt', 'w')......{|f|
http.get('/~foo/', nil) do |str|
f.write str
end
}
//}
@see Net::HTTP#request_get... -
Net
:: HTTP # get(path , header = nil , dest = nil) {|body _ segment| . . . . } -> Net :: HTTPResponse (212.0) -
サーバ上の path にあるエンティティを取得し、 Net::HTTPResponse のインスタンスとして返します。
...し、
Net::HTTPResponse のインスタンスとして返します。
header が nil
でなければ、リクエストを送るときにその内容を HTTP ヘッダとして
送ります。 header は { 'Accept' = > '*/*', ... } という
形のハッシュでなければいけません。
ブ......となります。
//emlist[例][ruby]{
# net/http version 1.1
response, body = http.get( '/index.html' )
# net/http version 1.2
response = http.get('/index.html')
# compatible in both version
response , = http.get('/index.html')
response.body
# compatible, using block
File.open('save.txt', 'w')......{|f|
http.get('/~foo/', nil) do |str|
f.write str
end
}
//}
@see Net::HTTP#request_get...