ライブラリ
クラス
-
ARGF
. class (12) - Array (21)
- Bignum (6)
-
File
:: Stat (48) - Fixnum (6)
- Float (22)
- IO (12)
- Integer (24)
-
Net
:: SMTP (24) - Regexp (12)
- Ripper (24)
- String (24)
- StringIO (12)
- ThreadsWait (6)
-
Zlib
:: Deflate (12) -
Zlib
:: GzipReader (84) -
Zlib
:: GzipWriter (12)
モジュール
- Kernel (12)
-
OpenSSL
:: Buffering (12) - TSort (46)
キーワード
- % (12)
- << (18)
- =~ (12)
- >> (18)
-
all
_ waits (6) -
each
_ byte (24) -
each
_ strongly _ connected _ component _ from (23) - grpowned? (12)
- lineno (12)
- lineno= (12)
- mode (12)
-
next
_ float (11) - owned? (12)
- pack (21)
- pos (12)
-
prev
_ float (11) - ready (12)
-
set
_ dictionary (12) - socket? (12)
- tell (12)
-
tsort
_ each (23) - ungetc (12)
- unpack (12)
- warn (12)
- warning (12)
検索結果
先頭5件
-
TSort
# each _ strongly _ connected _ component _ from(node , id _ map={} , stack=[]) {|nodes| . . . } -> () (7.0) -
node から到達可能な強連結成分についてのイテレータです。
...non_sort.each_strongly_connected_component{|nodes|
p nodes
nodes.each {|node|
non_sort.each_strongly_connected_component_from(node){|ns|
printf("%s -> %s\n", node, ns.join(","))
}
}
}
#出力
#=> [4]
#=> 4 -> 4
#=> [2, 3]
#=> 2 -> 4
#=> 2 -> 2,3
#=> 3 -> 4
#=> 3 -> 3,2
#=> [1]
#... -
TSort
# tsort _ each -> Enumerator (7.0) -
TSort#tsort メソッドのイテレータ版です。 obj.tsort_each は obj.tsort.each と似ていますが、 ブロックの評価中に obj が変更された場合は予期しない結果になる ことがあります。
...ort_each_child(node, &block)
fetch(node).each(&block)
end
end
non_sort = {1=>[2, 3], 2=>[3], 3=>[], 4=>[]}
non_sort.tsort_each {|node|
non_sort.tsort_each_child(node){|child|
printf("%d -> %d\n", node, child)
}
}
# 出力
#=> 2 -> 3
#=> 1 -> 2
#=> 1 -> 3
//}
@see TSort.tsort_each... -
TSort
# tsort _ each {|node| . . . } -> nil (7.0) -
TSort#tsort メソッドのイテレータ版です。 obj.tsort_each は obj.tsort.each と似ていますが、 ブロックの評価中に obj が変更された場合は予期しない結果になる ことがあります。
...ort_each_child(node, &block)
fetch(node).each(&block)
end
end
non_sort = {1=>[2, 3], 2=>[3], 3=>[], 4=>[]}
non_sort.tsort_each {|node|
non_sort.tsort_each_child(node){|child|
printf("%d -> %d\n", node, child)
}
}
# 出力
#=> 2 -> 3
#=> 1 -> 2
#=> 1 -> 3
//}
@see TSort.tsort_each... -
ThreadsWait
# all _ waits -> () (7.0) -
指定されたスレッドすべてが終了するまで待ちます。 ブロックが与えられた場合、スレッド終了時にブロックを評価します。
...ads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
thall = ThreadsWait.new(*threads)
thall.all_waits{|th|
printf("end %s\n", th.inspect)
}
# 出力例
#=> #<Thread:0x214bc run>
#=> #<Thread:0x21548 run>
#=> #<Thread:0x215d4 run>
#=> #<Thread... -
Zlib
:: Deflate # set _ dictionary(string) -> String (7.0) -
圧縮に用いる辞書を指定します。string を返します。 このメソッドは Zlib::Deflate.new, Zlib::ZStream#reset を呼び出した直後にのみ有効です。詳細は zlib.h を参照して下さい。
...sset = [ dict, 'taeagbamike', 'ugotagma', 'fugebogya' ]
g = [ 0, 1, 1, 1, 0, 0, 0, 3, 3, 3, 0, 0, 1, 1, 0, 0, 0, 1, 2, 2, 0, 0, 0, 2, 0, 1, 1, 0, 0, 0, 0, 0]
str = (1..i).collect{|m| t = rand(g.size); sset.at(g[t])}.join("")
printf "%d normal:%d, dict:%d\n", i, case1(str), case2(str, dict)... -
Zlib
:: GzipReader # each _ byte -> Enumerator (7.0) -
IO クラスの同名メソッドIO#each_byteと同じです。
...記で作成できる。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
=end
Zlib::GzipReader.open('hoge.gz') { |gz|
gz.each_byte { |b|
printf "%d -> %c\n", b, b
}
}
#=> 104 -> h
#=> 111 -> o
#=> 103 -> g
#=> 101 -> e
#=> 10 ->
@see IO#each_byte... -
Zlib
:: GzipReader # each _ byte {|byte| . . . } -> nil (7.0) -
IO クラスの同名メソッドIO#each_byteと同じです。
...記で作成できる。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
=end
Zlib::GzipReader.open('hoge.gz') { |gz|
gz.each_byte { |b|
printf "%d -> %c\n", b, b
}
}
#=> 104 -> h
#=> 111 -> o
#=> 103 -> g
#=> 101 -> e
#=> 10 ->
@see IO#each_byte... -
Zlib
:: GzipReader # lineno -> Integer (7.0) -
IO クラスの同名メソッドIO#linenoと同じです。
...lib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'h'
gz.puts 'o'
gz.puts 'g'
gz.puts 'e'
}
=end
Zlib::GzipReader.open('hoge.gz') { |gz|
while l = gz.gets
l.chomp!
printf "%s %d\n", l, gz.lineno
end
}
#=> h 1
#=> o 2
#=> g 3
#=> e 4
@see IO#lineno... -
Zlib
:: GzipReader # lineno=(num) (7.0) -
IO クラスの同名メソッドIO#lineno=と同じです。
....puts 'h'
gz.puts 'o'
gz.puts 'g'
gz.puts 'e'
}
=end
Zlib::GzipReader.open('hoge.gz') { |gz|
while l = gz.gets
l.chomp!
gz.lineno = 1000 if l == "o"
printf "%s %d\n", l, gz.lineno
end
}
#=> h 1
#=> o 1001
#=> g 1002
#=> e 1003
@see IO#lineno=... -
Zlib
:: GzipReader # pos -> Integer (7.0) -
現在までに展開したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。
...に注意して下さい。
require 'zlib'
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}
Zlib::GzipReader.open('hoge.gz'){|gz|
while c = gz.getc
printf "%c, %d\n", c, gz.pos
end
}
# 実行例
#=> h, 1
#=> o, 2
#=> g, 3
#=> e, 4
#=>
#=> , 5...