ライブラリ
クラス
- CSV (99)
-
CSV
:: Table (22) - IO (11)
- Method (6)
-
Net
:: HTTPResponse (22) - Proc (6)
-
Thread
:: Queue (33) -
Thread
:: SizedQueue (33) - ThreadsWait (60)
-
Zlib
:: GzipWriter (11)
オブジェクト
-
Readline
:: HISTORY (11)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - CSV (11)
- ERB (11)
-
NEWS for Ruby 2
. 1 . 0 (11) -
add
_ row (11) -
all
_ waits (18) - empty? (17)
- enq (22)
- finished? (6)
- join (6)
-
join
_ nowait (6) - new (6)
-
next
_ wait (6) - open (44)
- push (33)
- puts (11)
-
read
_ body (22) - readline (11)
- readlines (22)
- readpartial (11)
- rss (11)
-
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 2 feature (11) -
ruby 1
. 8 . 3 feature (11) - threads (6)
- timeout (19)
検索結果
先頭5件
-
Readline
:: HISTORY . <<(string) -> self (21118.0) -
ヒストリの最後に string で指定した文字列を追加します。 self を返します。
...する。
require "readline"
Readline::HISTORY << "foo"
p Readline::HISTORY[-1] #=> "foo"
例: "foo"、"bar"を追加する。
require "readline"
Readline::HISTORY << "foo" << "bar"
p Readline::HISTORY[-1] #=> "bar"
p Readline::HISTORY[-2] #=> "foo"
@see Readline::HISTORY.push... -
Thread
:: Queue # <<(value) -> () (21100.0) -
キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。
キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。 -
Thread
:: SizedQueue # <<(obj) -> () (21100.0) -
キューに与えられたオブジェクトを追加します。
...キューに与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
キューのサイズが Thread::SizedQueue#max より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与え......られたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@see Thread::Queue#push......ューに与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。......その後、キューに与えられたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。
@see Thread::Queue#push... -
CSV
. read(path , options = Hash . new) -> [Array] | CSV :: Table (18125.0) -
CSV ファイルを配列の配列にするために使います。 headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。
...なりません。
//emlist[例][ruby]{
require "csv"
require "pp"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV
pp CSV.read("test.csv")
# => [["id", "first name", "last name", "age"],
# ["1", "taro", "tanaka", "......"yumi", "adachi", "21"]]
//}
//emlist[例][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV
table = CSV.read("test.csv", headers: true)
p table.class # => CSV::Table
p table[0] # => #<CSV::Row "... -
CSV
# <<(row) -> self (18124.0) -
自身に row を追加します。
...定][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV
CSV.open("test.csv", "a") do |csv|
csv.puts(["5", "saburo", "kondo", "34"])
end
print File.read("test.csv")
# => id,first name,last name,age
#......e("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV
CSV.open("test.csv", "a") do |csv|
row = CSV::Row.new(["id", "first name", "last name", "age"], ["5", "saburo", "kondo", "34"])
csv.add_row(row)
end
print File.read("test.csv")... -
Method
# <<(callable) -> Proc (18124.0) -
self と引数を合成した Proc を返します。
...thod(:f) << method(:g)).call(3) # => 36
//}
//emlist[call を定義したオブジェクトを渡す例][ruby]{
class WordScanner
def self.call(str)
str.scan(/\w+/)
end
end
File.write('testfile', <<~TEXT)
Hello, World!
Hello, Ruby!
TEXT
pipeline = method(:pp) << WordScanner << File.me......thod(:read)
pipeline.call('testfile') # => ["Hello", "World", "Hello", "Ruby"]
//}
@see Proc#<<, Proc#>>... -
Proc
# <<(callable) -> Proc (18124.0) -
self と引数を合成した Proc を返します。
...(f << g).call(3) # => 36
//}
//emlist[call を定義したオブジェクトを渡す例][ruby]{
class WordScanner
def self.call(str)
str.scan(/\w+/)
end
end
File.write('testfile', <<~TEXT)
Hello, World!
Hello, Ruby!
TEXT
pipeline = proc { |data| puts "word count: #{data.size}" } << W......ordScanner << File.method(:read)
pipeline.call('testfile') # => word count: 4
//}
@see Method#<<, Method#>>... -
Zlib
:: GzipWriter # <<(str) -> self (18118.0) -
str を出力します。str が文字列でない場合は to_s を用いて 文字列に変換します。
...ェクトを与えます。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz << "hoge" << "fuga"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}
#=> hogefuga
@see IO#<<... -
ThreadsWait
# threads -> Array (9106.0) -
同期されるスレッドの一覧を配列で返します。
...ドの一覧を配列で返します。
使用例
require 'thwait'
threads = []
3.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
thall = ThreadsWait.new(*threads)
p thall.threads
#=> [#<Thread:0x21750 sleep>, #<Thread:0x216c4 sleep>, #<Thread:0x21638 sleep>]... -
Kernel
. # readlines(rs = $ / ) -> [String] (6148.0) -
ARGFを Kernel.#gets(rs) でEOFまで読み込んで、その各行を要素としてもつ配列を返します。 行の区切りは引数 rs で指定した文字列になります。
...st[main.rb][ruby]{
ARGV << 'b.txt' << 'b.txt'
p readlines #=> ["hello\n", "it\n", "\n", "common\n", "hello\n", "it\n", "\n", "common\n"]
ARGV << 'b.txt' << 'b.txt'
p readlines(nil) #=> ["hello\nit\n\ncommon\n", "hello\nit\n\ncommon\n"]
ARGV << 'b.txt' << 'b.txt'
p readlines("") #=> ["hell......o\nit\n\n", "common\n", "hello\nit\n\n", "common\n"]
ARGV << 'b.txt' << 'b.txt'
p readlines('it') #=> ["hello\nit", "\n\ncommon\n", "hello\nit", "\n\ncommon\n"]
p readlines #=> []
//}
//emlist[b.txt][ruby]{
hello
it
common
//}
@see $/,ARGF,Kernel.#gets, Kernel.#readline... -
Net
:: HTTPResponse # read _ body {|str| . . . . } -> () (6126.0) -
ブロックを与えなかった場合にはエンティティボディを 文字列で返します。 ブロックを与えた場合には エンティティボディを少しずつ取得して順次ブロックに 文字列で与えます。
...度に結果取得][ruby]{
require 'net/http'
uri = "http://www.example.com/index.html"
response = Net::HTTP.get_response(URI.parse(uri))
response.read_body[0..10] # => "<!doctype h"
//}
//emlist[例2 ブロックを与えて大きいファイルを取得][ruby]{
require 'net/http'
uri = URI.pars......"/path/to/big.file", "w") do |f|
# Net::HTTP#request_get と Net::HTTPResponse#read_body で少しずつ読み書き。メモリ消費が少ない。
http.request_get(uri.path) do |response|
response.read_body do |s|
f.write(s)
end
end
end
end
//}
一度ブロッ......は Net::ReadAdapter のインスタンスが返ってきますが、
その場合はそのオブジェクトは使わないでください。
dest は obsolete です。使わないでください。
dest を指定した場合には
ボディを少しずつ取得して順次
「dest << ボディ...