種類
- インスタンスメソッド (87)
- ライブラリ (11)
- 文書 (11)
クラス
-
Net
:: IMAP (44) -
Net
:: IMAP :: FetchData (22)
モジュール
- TSort (21)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - attr (11)
-
each
_ strongly _ connected _ component _ from (21) - seqno (11)
- store (11)
- tsort (11)
-
uid
_ fetch (11) -
uid
_ store (11)
検索結果
先頭5件
- Net
:: IMAP # fetch(set , attr) -> [Net :: IMAP :: FetchData] - Net
:: IMAP :: FetchData # attr -> { String => object } - Net
:: IMAP # uid _ fetch(set , attr) -> [Net :: IMAP :: FetchData] - TSort
# each _ strongly _ connected _ component _ from(node , id _ map={} , stack=[]) -> Enumerator - TSort
# each _ strongly _ connected _ component _ from(node , id _ map={} , stack=[]) {|nodes| . . . } -> ()
-
Net
:: IMAP # fetch(set , attr) -> [Net :: IMAP :: FetchData] (21565.0) -
FETCH コマンドを送り、メールボックス内のメッセージに 関するデータを取得します。
...
FETCH コマンドを送り、メールボックス内のメッセージに
関するデータを取得します。
Net::IMAP#examine もしくは Net::IMAP#select で
指定したメールボックスを対象とします。
set で対象とするメッセージを指定します。
これには......r、sequence number の配列、もしくは
Range オブジェクトを渡します。
attr には取得するアトリビュートを文字列の配列で渡してください。
指定可能なアトリビュートについては Net::IMAP::FetchData#attr
を見てください。
例:
p imap......DER.FIELDS (SUBJECT)]")
#=> [#<Net::IMAP::FetchData seqno=6, attr={"BODY[HEADER.FIELDS (SUBJECT)]"=>"Subject: test\r\n\r\n"}>]
data = imap.uid_fetch(98, ["RFC822.SIZE", "INTERNALDATE"])[0]
p data.seqno
#=> 6
p data.attr["RFC822.SIZE"]
#=> 611
p data.attr["INTERNALDATE"]
#=> "12-Oct-2... -
Net
:: IMAP :: FetchData # attr -> { String => object } (12224.0) -
各メッセージのアトリビュートの値をハッシュテーブルで返します。
...は以下の通りです。
: BODY
BODYSTRUCTURE の拡張データなしの形式。
Net::IMAP::BodyTypeBasic, Net::IMAP::BodyTypeText,
Net::IMAP::BodyTypeMessage, Net::IMAP::BodyTypeMultipart
のいずれか。
: BODY[<section>]<<partial>>
section で指定されたセクシ......]<<partial>>
section で指定されたセクションのメッセージボディの内容。文字列。
ただしこれで内容を見ても :Seen フラグを設定しない点が
BODY[<section>]と同様
: BODYSTRUCTURE
MIME-IMB でのメッセージボディ。
Net::IMAP::Bo......字列。
: RFC822
BODY[] と同じ。文字列。
: RFC822.HEADER
BODY.PEEK[HEADER] と同じ。文字列。
: RFC822.SIZE
メッセージの 822 サイズ。整数。
: RFC822.TEXT
BODY[TEXT] と同じ。文字列。
: UID
UID。整数。
詳しくは 2060 の FETCH command... -
Net
:: IMAP # uid _ fetch(set , attr) -> [Net :: IMAP :: FetchData] (9523.0) -
UID FETCH コマンドを送り、メールボックス内のメッセージに 関するデータを取得します。
...UID FETCH コマンドを送り、メールボックス内のメッセージに
関するデータを取得します。
Net::IMAP#examine もしくは Net::IMAP#select で
指定したメールボックスを対象とします。
set で対象とするメッセージを指定します。
これ......は
Range オブジェクトを渡します。
attr には取得するアトリビュートを文字列の配列で渡してください。
指定可能なアトリビュートについては Net::IMAP::FetchData#attr
を見てください。
@param set 処理対象のメッセージの UID
@param......attr アトリビュート(文字列配列)
@see Net::IMAP#fetch... -
TSort
# each _ strongly _ connected _ component _ from(node , id _ map={} , stack=[]) -> Enumerator (9408.0) -
node から到達可能な強連結成分についてのイテレータです。
...ん。
each_strongly_connected_component_from は
tsort_each_node を呼びません。
@param node ノードを指定します。
//emlist[例 到達可能なノードを表示する][ruby]{
require 'tsort'
class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node,......on_sort = {1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}
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]
#=> 1 -> 4
#=> 1 -> 2,3
#=> 1 -> 1
//}
@see TSort.each_strongly_connected_component_from... -
TSort
# each _ strongly _ connected _ component _ from(node , id _ map={} , stack=[]) {|nodes| . . . } -> () (9408.0) -
node から到達可能な強連結成分についてのイテレータです。
...ん。
each_strongly_connected_component_from は
tsort_each_node を呼びません。
@param node ノードを指定します。
//emlist[例 到達可能なノードを表示する][ruby]{
require 'tsort'
class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node,......on_sort = {1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}
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]
#=> 1 -> 4
#=> 1 -> 2,3
#=> 1 -> 1
//}
@see TSort.each_strongly_connected_component_from... -
Net
:: IMAP # store(set , attr , flags) -> [Net :: IMAP :: FetchData] | nil (9406.0) -
STORE コマンドを送り、メールボックス内のメッセージを 更新します。
...STORE コマンドを送り、メールボックス内のメッセージを
更新します。
set で更新するメッセージを指定します。
これには sequence number、sequence number の配列、もしくは
Range オブジェクトを渡します。
Net::IMAP#select で指定した......メールボックスを対象とします。
attr で何をどのように変化させるかを指定します。
以下を指定することができます。
* "FLAGS"
* "+FLAGS"
* "-FLAGS"
それぞれメッセージのフラグの置き換え、追加、削除を意味します。
詳し......et::IMAP::FetchData オブジェクトの
配列で返します。
例:
p imap.store(6..8, "+FLAGS", [:Deleted])
#=> [#<Net::IMAP::FetchData seqno=6, attr={"FLAGS"=>[:Seen, :Deleted]}>, #<Net::IMAP::FetchData seqno=7, attr={"FLAGS"=>[:Seen, :Deleted]}>, #<Net::IMAP::FetchData seqno=8, attr={"F... -
Net
:: IMAP # uid _ store(set , attr , flags) -> [Net :: IMAP :: FetchData] | nil (9406.0) -
UID STORE コマンドを送り、メールボックス内のメッセージを 更新します。
...UID STORE コマンドを送り、メールボックス内のメッセージを
更新します。
set で更新するメッセージを指定します。
これには UID、UID の配列、もしくは
Range オブジェクトを渡します。
Net::IMAP#select で指定したメールボック......スを対象とします。
attr で何をどのように変化させるかを指定します。
以下を指定することができます。
* "FLAGS"
* "+FLAGS"
* "-FLAGS"
それぞれメッセージのフラグの置き換え、追加、削除を意味します。
詳しくは 2060 の 6.......してください。
返り値は更新された内容を Net::IMAP::FetchData オブジェクトの
配列で返します。
@param set 更新するメッセージの UID
@param attr 更新方式(文字列)
@param flags 更新内容(Symbol の配列)
@see Net::IMAP#store, Net::IMAP#uid_fetch... -
Net
:: IMAP :: FetchData # seqno -> Integer (6206.0) -
メッセージの sequence number を返します。
...メッセージの sequence number を返します。
Net::IMAP#uid_fetch、Net::IMAP#uid_storeであっても
UID ではなく、sequence numberを返します。... -
tsort (6030.0)
-
tsort はトポロジカルソートと強連結成分に関するモジュールを提供します。
...tsort はトポロジカルソートと強連結成分に関するモジュールを提供します。
=== Example
//emlist[][ruby]{
require 'tsort'
class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end
{1=>[2, 3],......d_component_from(target) {|ns|
if ns.length != 1
fs = ns.delete_if {|n| Array === n}
raise TSort::Cyclic.new("cyclic dependencies: #{fs.join ', '}")
end
n = ns.first
if Array === n
outputs, inputs, block = n
inputs_time = inputs.map {|f| File.m......分に関するアルゴリズムを使っているからです。
とはいえ strongly_connected_components という正確な名前は長過ぎます。
=== References
R. E. Tarjan,
Depth First Search and Linear Graph Algorithms,
SIAM Journal on Computing, Vol. 1, No. 2, pp. 146-160, June 1972.... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (3336.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...点(まとめ)/文法の変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>))
* ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>))
* ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>))
* ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予......eferr は ((<obsolete>)) になりました
$stdin は、普通のグローバル変数となりました(STDINをリダイレクトする
動作はなくなりました)
$defout や $deferr に代入を行うと警告がでます。
(注:1.6 に $deferr はありません)
((<ruby-dev......)
=== ARGF
: ((<ARGF/ARGF.path>)) [new]
追加 (ARGF.filename の別名) ((<ruby-dev:20197>))
=== Array
: ((<Array#transpose|Array/transpose>)) [new]
追加
: ((<Array#zip|Enumerable/zip>)) [new]
: ((<Enumerable#zip|Enumerable/zip>)) [new]
追加
: ((<Array#fetch|Array/fetch>)) [n...