別のキーワード
クラス
- CSV (48)
-
OpenSSL
:: BN (12) - OptionParser (144)
- String (12)
- StringScanner (12)
-
Thread
:: Queue (36) -
Thread
:: SizedQueue (36)
キーワード
- deq (24)
- gets (12)
- iseuc (12)
-
matched
_ size (12) - on (144)
- pop (24)
- readline (12)
-
return
_ headers? (12) - rshift! (12)
検索結果
先頭5件
-
Thread
:: Queue # shift(non _ block = false) -> object (24250.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)......ist[例: nonblock = true][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)
}
begin
th1.join
q.pop(true)
rescue => e
p e
end
# => resource1
# resource2
# resourc......e3
# => #<ThreadError: queue empty>
# => "queue empty"
//}... -
Thread
:: SizedQueue # shift(non _ block = false) -> object (24250.0) -
キューからひとつ値を取り出します。 キューに 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].each{|r|
q.......push(r)
}
th1.join
# => resource1
# resource2
# resource3
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each{|r|
q.push(r)
}
begin
th1.jo......in
q.pop(true)
rescue => e
p e
p e.message
end
# => resource1
# resource2
# resource3
# => #<ThreadError: queue empty>
# => "queue empty"
//}
@see Thread::Queue#pop... -
CSV
# shift -> Array | CSV :: Row (21314.0) -
String や IO をラップしたデータソースから一行だけ読み込んで フィールドの配列か CSV::Row のインスタンスを返します。
...String や IO をラップしたデータソースから一行だけ読み込んで
フィールドの配列か CSV::Row のインスタンスを返します。
データソースは読み込み用にオープンされている必要があります。
@return ヘッダを使用しない場合は......配列を返します。
ヘッダを使用する場合は CSV::Row を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new(DATA.read)
csv.readline # => ["header1", "header2"]
csv.readline # => ["row1_1", "row1_2"]
__END__
header1,header2
row1_1,row1_2
//}... -
OpenSSL
:: BN # rshift!(n) -> self (18313.0) -
自身を n ビット右シフトします。 [[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。
...[[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。
//emlist[][ruby]{
require 'openssl'
bn = 8.to_bn
bn.rshift!(1) # => #<OpenSSL::BN 4>
bn # => #<OpenSSL::BN 4>
//}
@param n シフトするビット数
@raise OpenSSL::BNError 計算時エラー
@see OpenSSL::BN#>>... -
CSV
# return _ headers? -> bool (12225.0) -
ヘッダを返す場合は、真を返します。 そうでない場合は、偽を返します。
...mlist[例][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true, return_headers: false)
csv.return_headers? # => false
csv.shift # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">
csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true, return_headers: true)......csv.return_headers? # => true
csv.shift # => #<CSV::Row "header1":"header1" "header2":"header2">
//}
@see CSV.new... -
StringScanner
# matched _ size -> Integer | nil (9231.0) -
前回マッチした部分文字列の長さを返します。 前回マッチに失敗していたら nil を返します。
...st[][ruby]{
require 'strscan'
def run(encode)
utf8 = "\u{308B 3073 3044}" # るびい
s = StringScanner.new(utf8.encode(encode))
s.scan(/#{"\u{308B}".encode(encode)}/)
s.matched_size
end
p run("UTF-8") #=> 3
p run("EUC-JP") #=> 2
p run("Shift_Jis") #=> 2
//}
//emlist[例][ruby]{
r......equire 'strscan'
s = StringScanner.new('test string')
s.matched_size # => nil
s.scan(/\w+/) # => "test"
s.matched_size # => 4
s.scan(/\w+/) # => nil
s.matched_size # => nil
//}... -
OptionParser
# on(short , desc = "") {|v| . . . } -> self (6241.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
...きます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv'){|......boolean| ...}
opt.on('--require X', '--need', '--dependon'){|x| ... }
@param short ショートオプションを表す文字列を指定します。
そのオプションが引数をとらない場合は、
//emlist{
on("-x"){|boolean| ...}
//}
となります。コ......合 true を引数と
してブロックを評価します。
ショートオプションが引数をとる場合は、以下のようになります。
//emlist{
on("-x MANDATORY"){|val| ...} # " MANDATORY" の部分は任意の文字列で構いません
on("-xSTRING"... -
OptionParser
# on(short , long , desc = "") {|v| . . . } -> self (6241.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
...きます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv'){|......boolean| ...}
opt.on('--require X', '--need', '--dependon'){|x| ... }
@param short ショートオプションを表す文字列を指定します。
そのオプションが引数をとらない場合は、
//emlist{
on("-x"){|boolean| ...}
//}
となります。コ......合 true を引数と
してブロックを評価します。
ショートオプションが引数をとる場合は、以下のようになります。
//emlist{
on("-x MANDATORY"){|val| ...} # " MANDATORY" の部分は任意の文字列で構いません
on("-xSTRING"... -
OptionParser
# on(long , *rest) {|v| . . . } -> self (6236.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
...ない場合、例外
OptionParser::InvalidArgument が OptionParser#parse 実行時
に発生します。
@param short ショートオプションを表す文字列を指定します。
@param long ロングオプションを表す文字列を指定します。
@param rest 可能な引数を列......説明と見なします。
//emlist[][ruby]{
opts.on("--protocol VALUE", [:http, :ftp, :https]){|w|
p w
}
# ruby command --protocol=http #=> :http
opts.on("-c", "--charset VALUE", {"jis" => "iso-2022-jp", "sjis" => "shift_jis"}){|w|
p w
}
# ruby command --charset=jis #=> "iso-2022-jp"
//}...