ライブラリ
- ビルトイン (268)
- json (11)
-
minitest
/ unit (1) - openssl (11)
- pstore (55)
- psych (17)
- tsort (21)
-
webrick
/ config (11)
クラス
- Hash (77)
-
MiniTest
:: Unit (1) -
OpenSSL
:: Config (11) - PStore (44)
- String (33)
- Struct (4)
モジュール
- JSON (11)
- Kernel (143)
- Psych (17)
- TSort (21)
-
WEBrick
:: Config (11)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - FileHandler (11)
- Marshal フォーマット (11)
-
NEWS for Ruby 2
. 7 . 0 (5) - Numeric (11)
- PStore (11)
- []= (33)
- delete (11)
-
each
_ strongly _ connected _ component _ from (21) - encode (33)
- exec (44)
- fetch (11)
- new (25)
- optparse (11)
-
process
_ args (1) -
rexml
/ parsers / pullparser (11) - rss (11)
-
ruby 1
. 6 feature (11) -
ruby 1
. 9 feature (11) -
safe
_ load (17) - spawn (44)
- store (11)
- system (44)
- tsort (11)
-
webrick
/ cgi (11)
検索結果
先頭5件
-
String
# encode(encoding , from _ encoding , **options) -> String (18.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
...FFD、それ以外では "?" です。
: :fallback => Hash | Proc | Method
未定義の文字に対する置換文字を設定します。このオプションに与えられるオブジェクトは Hash, Proc, Method のいずれかまたは [] メソッドを持つオブジェクトです。... -
optparse (18.0)
-
コマンドラインのオプションを取り扱うためのライブラリです。
...{|v| p v } # <- [VAL] を追加
opt.on('-b') {|v| p v }
opt.parse!(ARGV)
p ARGV
//}
↓
ruby sample.rb -a
# => nil
[]
同様に、ヘルプの見栄えが良いように "VAL]" を付加しています。
ショートオプションの引数指定は使い......//emlist[][ruby]{
opt.on('-a', '--foo=VAL') {|v| p v }
opt.on('--[no-]bar[=VAL]') {|v| p v }
//}
と "=" を使うのが良いと思われます。
オプションを指定する時は、どのオプションか一意に決まる長さまで指定す
れば良いです。
//emlist[][ruby]{
requ......contributed by Minero Aoki.
require 'optparse'
parser = OptionParser.new
parser.on('-i') { puts "-i" }
parser.on('-o') { puts '-o' }
subparsers = Hash.new {|h,k|
$stderr.puts "no such subcommand: #{k}"
exit 1
}
subparsers['add'] = OptionParser.new.on('-i') { puts "add -i" }
subparsers['del']... -
rexml
/ parsers / pullparser (18.0) -
プル方式の XML パーサ。
...rsers::PullEvent#event_type で「開始タグ」「終了タグ」
といったイベントの種類を取得します。
REXML::Parsers::PullEvent#[] でそのイベントのパラメータ
(例えば開始タグなら要素名と属性)を得ることができます。
===[a:event_type] イベ......可能です。
: start_element (要素名, 属性)
XML要素の開始タグ。属性は { 属性名文字列 => 属性値文字列 } という Hash
: end_element (要素名)
XML要素の終了タグ
: text (正規化文字列, 非正規化文字列)
テキストノード
: processing_instruc......DTDの属性リスト宣言。属性名とデフォルト値 は { 属性名文字列 => デフォルト値文字列(なければnil) } という Hash
: elementdecl (宣言文字列)
DTDの要素宣言
: entitydecl
DTDの実体宣言
: notationdecl (記法名文字列, "PUBLIC" | "SYSTEM" | n... -
rss (18.0)
-
RSS を扱うためのライブラリです。
...; RSS::RDF::Item
3番目のitem要素にアクセスするには以下のようにします。省略さ
れなかったリーダの引数はArray#[]の引数と同じように扱われます。
rss = RSS::Parser.parse(rss_source)
rss.item(2) # => /rdf:RDF/item[3]要素; RSS::RDF::Item
子要......合は少し異なります.要素名の複
数形でのメソッドで要素の配列を取得して,その配列に対して
Array#<<やArray#[]=などを用いて要素を設定します.
rss = RSS::Parser.parse(rss_source)
item = RSS::RDF::Item.new(rdf_about_value)
rss.items << item......MLStyleSheet.new(...)
RSS::XMLStyleSheet.newには以下のようなHashまたは
連想配列を渡します.作成されるRSS::XMLStyleSheetオブジェ
クトは与えられた引数によって初期化されます.
Hash:
{
:href => "...",
:type => "...",
:title => "...",... -
Numeric (12.0)
-
数値を表す抽象クラスです。Integer や Float などの数値クラス は Numeric のサブクラスとして実装されています。
...o o - -
>> | - - o o - - -
[] | - - o o - - -
^ | - - o......----------------------------------------
gcdlcm | - o - - - - -
hash | - - - o o o o
i | o - -......n.floor
end
//}
また、任意桁の切上げ、切捨て、四捨五入を行うメソッドは以下のように
定義できます。
//emlist[][ruby]{
class Numeric
def roundup(d=0)
x = 10**d
if self > 0
self.quo(x).ceil * x
else
self.quo(x).floor * x
end
end......>= | - o o - -
>> | - o - - -
[] | - o - - -
^ | - o - - -......gcd | - o - - -
gcdlcm | - o - - -
hash | - - o o o
i | o - - - -... -
PStore (12.0)
-
Rubyのオブジェクトを外部ファイルに格納するためのクラスです。 内部で Marshal を使っています。
...saction のブロック内である必要があります。
インターフェースは Hash に似ています。
require 'pstore'
db = PStore.new("/tmp/foo")
db.transaction do
p db.roots # => []
ary = db["root"] = [1,2,3,4]
ary[0] = [1,1.5]
end
db.transaction do... -
PStore
# delete(name) -> object (12.0) -
ルートnameに対応する値を削除します。
...tore'
db = PStore.new("/tmp/foo")
db.transaction do
p db.roots # => []
ary = db["root"] = [1,2,3,4]
ary[0] = [1,1.5]
end
db.transaction do |pstore|
pstore.delete("root") # => [[1, 1.5], 2, 3, 4]
pstore.delete("root") # => nil
end
@see Hash#delete... -
PStore
# fetch(name , default = PStore :: Error) -> object (12.0) -
ルートnameに対応する値を得ます。
...> []
ary = db["root"] = [1,2,3,4]
ary[0] = [1,1.5]
end
db.transaction(true) do |pstore|
pstore.fetch("root") # => [[1, 1.5], 2, 3, 4]
pstore.fetch("root", 'aaa') # => [[1, 1.5], 2, 3, 4]
pstore.fetch("not_root") # => 例外発生
end
@see Hash#fetch, PStore#[]... -
tsort (12.0)
-
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], 2=>[3], 3=>[], 4=>[]}.tsort
#=> [3, 2, 1, 4]
{1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}.strongly_connected_c......単純な `make' に似たツールは以下のように実装できます。
//emlist[][ruby]{
require 'tsort'
class Make
def initialize
@dep = {}
@dep.default = []
end
def rule(outputs, inputs=[], &block)
triple = [outputs, inputs, block]
outputs.each {|f| @dep[f] = [tripl...