別のキーワード
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - FAST (1)
- GDBM (1)
- GDBMError (1)
- GDBMFatalError (1)
- NEWDB (1)
-
NEWS for Ruby 2
. 5 . 0 (1) - NOLOCK (1)
- READER (1)
- SYNC (1)
- VERSION (1)
- WRCREAT (1)
- WRITER (1)
- [] (1)
- []= (1)
- cachesize= (1)
- clear (1)
- close (1)
- closed? (1)
- dbm (1)
- delete (3)
-
delete
_ if (2) - each (1)
-
each
_ key (1) -
each
_ pair (1) -
each
_ value (1) - empty? (1)
- fastmode= (1)
- fetch (2)
-
has
_ key? (1) -
has
_ value? (1) - include? (1)
- index (1)
- invert (2)
- key (1)
- key? (1)
- keys (2)
- length (1)
- member? (1)
- new (1)
- open (2)
- reject (1)
- reject! (2)
- reorganize (1)
- replace (2)
-
ruby 1
. 8 . 2 feature (1) -
ruby 1
. 8 . 3 feature (1) - sdbm (1)
- select (2)
- shift (2)
- size (1)
- store (1)
- sync (1)
- syncmode= (1)
-
to
_ a (2) -
to
_ hash (2) - update (2)
- value? (1)
- values (1)
-
values
_ at (2)
検索結果
先頭5件
-
gdbm (114085.0)
-
GDBM(GNU データベース・マネージャ) を Ruby スクリプトから扱うためのライブラリです。
GDBM(GNU データベース・マネージャ) を Ruby スクリプトから扱うためのライブラリです。
GDBM は dbm および ndbm 互換機能を含んでいます。
扱えるキーや値のサイズに制限はありません。
作成されるデータベースはアーキテクチャに依存するため、作成した環境と異
なる環境ではデータベースが読み込めない可能性があります。
@see dbm, sdbm, gdbm(3) -
GDBM
. open(dbname , mode = 0666 , flags = 0) -> GDBM (51592.0) -
dbname で指定したデータベースをモードを mode に設定してオープンします。
dbname で指定したデータベースをモードを mode に設定してオープンします。
ブロックを指定した場合、オープンした GDBM オブジェクトを
引数にブロックを実行します。実行後 GDBM オブジェクトをクローズ
し、open メソッドはブロックの結果を返します。
@param dbname データベースの名前を指定します。
@param mode 省略値は 0666 です。mode として nil を指定するとデータベースが
存在しない時には新たなデータベースを作らず nil を返します。
@param flags flags には、GDBM::FAS... -
GDBM
. new(dbname , mode = 0666 , flags = 0) -> GDBM (51484.0) -
dbname で指定したデータベースをモードを mode に設定してオープンします。
dbname で指定したデータベースをモードを mode に設定してオープンします。
@param dbname データベースの名前を指定します。
@param mode 省略値は 0666 です。mode として nil を指定するとデータベースが
存在しない時には新たなデータベースを作らず nil を返します。
@param flags flags には、GDBM::FAST, GDBM::SYNC, GDBM::NOLOCK
の論理和を指定します。デフォルト値は指定なし(つまり0)です。
flags に ... -
GDBM
. open(dbname , mode = 0666 , flags = 0) {|db| . . . } -> object (51292.0) -
dbname で指定したデータベースをモードを mode に設定してオープンします。
dbname で指定したデータベースをモードを mode に設定してオープンします。
ブロックを指定した場合、オープンした GDBM オブジェクトを
引数にブロックを実行します。実行後 GDBM オブジェクトをクローズ
し、open メソッドはブロックの結果を返します。
@param dbname データベースの名前を指定します。
@param mode 省略値は 0666 です。mode として nil を指定するとデータベースが
存在しない時には新たなデータベースを作らず nil を返します。
@param flags flags には、GDBM::FAS... -
GDBM
# replace(other) -> self (51181.0) -
self の内容を other の内容で置き換えます。
self の内容を other の内容で置き換えます。
@param other each_pair メソッドを持つオブジェクトでなければなりません。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db2 = GDBM.open('bbb.gdbm', 0666, GDBM::NEWDB)
db2['c'] = 'ccc'
db2['d'] = 'ddd'
hash = { 'x' => 'xxx', 'y... -
GDBM
# fastmode=(bool) (51103.0) -
オープンしている GDBM オブジェクトのモードを変更します。
オープンしている GDBM オブジェクトのモードを変更します。
このオプションはデフォルトで on です。
このオプションは obsolete です。
このオプションが on のときは、GDBM はディスクへの書き込みを待たずに
次の操作を続けます。
@param bool 新たにセットするモード。
@see GDBM::FAST, GDBM#syncmode= -
GDBM
# syncmode=(bool) (51103.0) -
オープンしている GDBM オブジェクトのモードを変更します。
オープンしている GDBM オブジェクトのモードを変更します。
このオプションはデフォルトで off です。
このオプションが on のときは、GDBM はデータベースの変更操作ごとに
データベースの状態を同期します。
@param bool 新たにセットするモード。
@see GDBM::SYNC, GDBM#fastmode= -
GDBM
# fetch(key , ifnone = nil) {|key| . . . } -> object (51073.0) -
データベースから対応するキーを探してその要素の値を返します。
データベースから対応するキーを探してその要素の値を返します。
@param key 探索するキー。
@param ifnone 対応するキーが見つからなかった場合に返す値。
@raise IndexError ifnone が設定されていないときに、対応するキーが
見つからなかった場合に発生します。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
p db1.fetc... -
GDBM
# invert -> Hash (51073.0) -
値からキーへのハッシュを返します。
値からキーへのハッシュを返します。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
p db1.invert #=> {"aaa"=>"a", "bbb"=>"b"} -
GDBM
# keys -> [String] (51073.0) -
データベース中に存在するキー全てを含む配列を返します。
データベース中に存在するキー全てを含む配列を返します。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
p db1.keys #=> ["a", "b"] -
GDBM
# select {|key , value| . . . } -> [[String]] (51073.0) -
ブロックを評価して真になった要素のみを配列に格納して返します。
ブロックを評価して真になった要素のみを配列に格納して返します。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.select{ |key, value| key == 'a' } #=> [["a", "aaa"]]
p db1.select{ |key, value| key != 'a' } #=> [["c", "ccc"], ["b", "bbb"]]
... -
GDBM
# shift -> [String] (51073.0) -
データベース中の要素を一つ取り出し、データベースから削除します。
データベース中の要素を一つ取り出し、データベースから削除します。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
p db1.shift #=> ["a", "aaa"] -
GDBM
# values _ at(*keys) -> [String] (51073.0) -
keys に対応する値を配列に格納して返します。
keys に対応する値を配列に格納して返します。
@param keys キー。複数指定可能です。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.values_at('a', 'b') #=> ["aaa", "bbb"]
p db1.values_at('x', 'y') #=> [nil, nil] -
GDBM
:: FAST -> Integer (51067.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
書き込みの結果が、ディスク上のファイルにすぐに反映しなくなります。
このモードのときに結果を明示的にファイルに反映させるには GDBM#sync
メソッドを呼びます。libgdbm version 1.8.0 以降ではこのモードがデフォルト
です。 -
GDBM
# cachesize=(size) (51055.0) -
内部のキャッシュのサイズを指定します。
内部のキャッシュのサイズを指定します。
詳しくは gdbm(3) の GDBM_CACHESIZE の項を参照ください。
@param size 新しい内部のキャッシュサイズ。
@see gdbm(3) -
GDBM
# sync -> self (51055.0) -
要素の変更をファイルに反映します。
要素の変更をファイルに反映します。
FAST モード(GDBM.open の第3引数に GDBM::FAST を指定)のときだけ意味があります。
=== 注意
GNU gdbm version 1.8 以降より FAST モードがデフォルトになりました。 -
GDBM
# index(val) -> String (51049.0) -
このメソッドは deprecated です。GDBM#key を使用してください。
このメソッドは deprecated です。GDBM#key を使用してください。 -
GDBM
:: NEWDB -> Integer (51049.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
書き込みモードで、すでにファイルが存在したら削除してから作り直します。 -
GDBM
:: NOLOCK -> Integer (51049.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
通常、他のプロセスが DB をオープンしている最中にオープンを行うと
Errno::EWOULDBLOCK(または Errno::EAGAIN) 例外が発生します。
このフラグを指定していれば、他のプロセスがオープンしている最中でも同時
オープンすることができます。
この定数は libgdbm version 1.8.0 以降より有効です。 -
GDBM
:: READER -> Integer (51049.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
読み込みモードでオープンします。 -
GDBM
:: SYNC -> Integer (51049.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
書き込みの結果が、ディスク上のファイルにすぐに反映されます。
libgdbm version 1.8.0 以前のデフォルトモードです。
この定数は libgdbm version 1.8.0 以降より有効です。 -
GDBM
:: WRCREAT -> Integer (51049.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
書き込みモードで、すでにファイルが存在しなかったら作ります。 -
GDBM
:: WRITER -> Integer (51049.0) -
GDBM.open の第3引数に指定します。
GDBM.open の第3引数に指定します。
書き込みモードでオープンします。 -
GDBM
# delete(key) -> object | nil (51037.0) -
与えられた key に対応する項目を削除します。
与えられた key に対応する項目を削除します。
@param key キーを指定します。
@return 指定したキーが存在する場合は、キーに対応する値を返します。
指定したキーが存在しない場合は、 nil を返します。
また、キーが存在しない場合にブロックを与えている場合は、ブロックを評価した結果を返します。
require 'gdbm'
GDBM.open("a.db") do |db|
db['a'] = "aaa"
db['d'] = "ddd"
db.delete("a") # => "aaa"
db.... -
GDBM
# delete(key) {|key| . . . } -> object (51037.0) -
与えられた key に対応する項目を削除します。
与えられた key に対応する項目を削除します。
@param key キーを指定します。
@return 指定したキーが存在する場合は、キーに対応する値を返します。
指定したキーが存在しない場合は、 nil を返します。
また、キーが存在しない場合にブロックを与えている場合は、ブロックを評価した結果を返します。
require 'gdbm'
GDBM.open("a.db") do |db|
db['a'] = "aaa"
db['d'] = "ddd"
db.delete("a") # => "aaa"
db.... -
GDBM
# reorganize -> self (51019.0) -
DB ファイルの再編成を行います。
DB ファイルの再編成を行います。
GDBM では、要素の削除を行っても DB ファイルのサイズは減少しません(削
除によって空いた領域は次の格納のために取っておかれます)。
このメソッドを呼び出すことで DBM ファイルを新規に作り直し無駄な領域をなく
すことができます。
大量の削除を行ったときに、ディスクスペースの節約のために使用します。 -
GDBM
# store(key , val) -> [String] (51019.0) -
key に対して val を格納します。
key に対して val を格納します。
@see GDBM#[]= -
GDBM
# [](key) -> String (51001.0) -
key をキーとする値を返します。
key をキーとする値を返します。
@param key キー。 -
GDBM
# []=(key , value) (51001.0) -
key をキーとして、value を格納します。
key をキーとして、value を格納します。
@param key キー。
@param value 格納する値。 -
GDBM
# clear -> self (51001.0) -
DBM ファイルを空にします。
DBM ファイルを空にします。 -
GDBM
# close -> nil (51001.0) -
DBM ファイルをクローズします。
DBM ファイルをクローズします。
以後の操作は例外 RuntimeError を発生させます。 -
GDBM
# closed? -> bool (51001.0) -
DBM ファイルが既に閉じられている場合は、真を返します。 そうでない場合は、偽を返します。
DBM ファイルが既に閉じられている場合は、真を返します。
そうでない場合は、偽を返します。 -
GDBM
# delete _ if { |key , value| . . . } -> self (51001.0) -
ブロックを評価した値が真であれば該当する項目を削除します。
ブロックを評価した値が真であれば該当する項目を削除します。
このメソッドは self を破壊的に変更します。 -
GDBM
# each {|key , value| . . . } -> self (51001.0) -
各要素に対するイテレータです。
各要素に対するイテレータです。 -
GDBM
# each _ key {|key| . . . } -> self (51001.0) -
全ての key に対して繰り返すイテレータです。
全ての key に対して繰り返すイテレータです。 -
GDBM
# each _ pair {|key , value| . . . } -> self (51001.0) -
各要素に対するイテレータです。
各要素に対するイテレータです。 -
GDBM
# each _ value {|value| . . . } -> self (51001.0) -
全ての value に対して繰り返すイテレータです。
全ての value に対して繰り返すイテレータです。 -
GDBM
# empty? -> bool (51001.0) -
データベースが空の時、真を返します。
データベースが空の時、真を返します。 -
GDBM
# has _ key?(key) -> bool (51001.0) -
key がデータベース中に存在する時、真を返します。
key がデータベース中に存在する時、真を返します。 -
GDBM
# has _ value?(value) -> bool (51001.0) -
value を値とする要素がデータベース中に存在する時、真を返します。
value を値とする要素がデータベース中に存在する時、真を返します。
@param value 検索したい値。 -
GDBM
# include?(key) -> bool (51001.0) -
key がデータベース中に存在する時、真を返します。
key がデータベース中に存在する時、真を返します。 -
GDBM
# key(value) -> String | nil (51001.0) -
与えられた値に対応するキーを返します。
与えられた値に対応するキーを返します。
対応する要素が存在しない時には nil を返します。
値に対応するキーが複数ある場合は最初に見つかったキーを返します。
@param value キーを探したい値を指定します。 -
GDBM
# key?(key) -> bool (51001.0) -
key がデータベース中に存在する時、真を返します。
key がデータベース中に存在する時、真を返します。 -
GDBM
# length -> Integer (51001.0) -
データベース中の要素の数を返します。
データベース中の要素の数を返します。
現在の実現では要素数を数えるためにデータベースを全部検索します。 -
GDBM
# member?(key) -> bool (51001.0) -
key がデータベース中に存在する時、真を返します。
key がデータベース中に存在する時、真を返します。 -
GDBM
# reject {|key , value| . . . } -> Hash (51001.0) -
ブロックを評価した値が真であれば該当する要素を削除します。
ブロックを評価した値が真であれば該当する要素を削除します。
self.to_hash.reject{|key, value| ... }
と同じです。
@see Hash#reject -
GDBM
# reject! { |key , value| . . . } -> self (51001.0) -
ブロックを評価した値が真であれば該当する項目を削除します。
ブロックを評価した値が真であれば該当する項目を削除します。
このメソッドは self を破壊的に変更します。 -
GDBM
# size -> Integer (51001.0) -
データベース中の要素の数を返します。
データベース中の要素の数を返します。
現在の実現では要素数を数えるためにデータベースを全部検索します。 -
GDBM
# to _ a -> [[String]] (51001.0) -
self の各要素を格納した配列を返します。
self の各要素を格納した配列を返します。
返される配列の1つの要素は [key, value] です。
つまり配列の配列を返します。 -
GDBM
# to _ hash -> Hash (51001.0) -
self の各要素を格納したハッシュを返します。
self の各要素を格納したハッシュを返します。 -
GDBM
# update(other) -> self (51001.0) -
self と other の内容をマージします。
self と other の内容をマージします。
重複するキーに対応する値はother の内容で上書きされます。
@param other each_pair メソッドを持つオブジェクトでなければなりません。 -
GDBM
# value?(value) -> bool (51001.0) -
value を値とする要素がデータベース中に存在する時、真を返します。
value を値とする要素がデータベース中に存在する時、真を返します。
@param value 検索したい値。 -
GDBM
# values -> [String] (51001.0) -
データベース中に存在する値全てを含む配列を返します。
データベース中に存在する値全てを含む配列を返します。 -
GDBM
:: VERSION -> String (51001.0) -
libgdbm のバージョン情報の文字列です。
libgdbm のバージョン情報の文字列です。 -
GDBM (42049.0)
-
GDBM ファイルをアクセスするクラス。
GDBM ファイルをアクセスするクラス。
キー、データともに文字列でなければならないという制限と、
データがファイルに保存されるという点を除いては Hash クラスと
全く同様に扱うことができます。 -
GDBMError (42049.0)
-
GDBM 内部で使用する例外クラスです。
GDBM 内部で使用する例外クラスです。 -
GDBMFatalError (42049.0)
-
GDBM 内部で使用する例外クラスです。
GDBM 内部で使用する例外クラスです。 -
ruby 1
. 8 . 2 feature (91.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
ruby 1.8.2 feature
ruby 1.8.2 での ruby 1.8.1 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
*カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
*レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/... -
SDBM
# replace(other) -> self (37.0) -
self の内容を other の内容で置き換えます。
self の内容を other の内容で置き換えます。
@param other each_pair メソッドを持つオブジェクトでなければなりません。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
db2 = SDBM.open('bbb.gdbm', 0666)
db2['c'] = 'ccc'
db2['d'] = 'ddd'
hash = { 'x' => 'xxx', 'y' => 'y... -
SDBM
# update(other) -> self (37.0) -
self と other の内容をマージします。
self と other の内容をマージします。
重複するキーに対応する値はother の内容で上書きされます。
@param other each_pair メソッドを持つオブジェクトでなければなりません。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1.clear
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
db2 = SDBM.open('bbb.gdbm', 0666)
db2.clear
db2['c'] = 'ccc'... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (19.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への変更点(まとめ)/インタプリタの変更>))
* ((<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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
NEWS for Ruby 2
. 5 . 0 (19.0) -
NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.5.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.4.0 以降の変更
=== 言語仕様の変更
* トップレベルの定数参照を削除しました 11547
* do/end ブロック内部で rescue/else/ensure を書けるようになりました 12906
* 文字列の式展... -
SDBM
# delete(key) -> String (19.0) -
key をキーとする項目を削除します。
key をキーとする項目を削除します。
@param key キー。
@return 削除した要素の値を返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.delete('a') #=> 'aaa' -
SDBM
# delete _ if { |key , value| . . . } -> self (19.0) -
ブロックを評価した値が真であれば該当する項目を削除します。
ブロックを評価した値が真であれば該当する項目を削除します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1 #=> #<SDBM:0xb7cc96f8>
p db1.reject!{ |key, value| key == 'a' } #=> #<SDBM:0xb7cc96f8> -
SDBM
# fetch(key , ifnone = nil) {|key| . . . } -> object (19.0) -
データベースから対応するキーを探してその要素の値を返します。
データベースから対応するキーを探してその要素の値を返します。
@param key 探索するキー。
@param ifnone 対応するキーが見つからなかった場合に返す値。
@raise IndexError ifnone が設定されていないときに、対応するキーが
見つからなかった場合に発生します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db... -
SDBM
# invert -> Hash (19.0) -
値からキーへのハッシュを返します。
値からキーへのハッシュを返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1.clear
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.invert #=> {"aaa"=>"a", "bbb"=>"b", "ccc"=>"c"} -
SDBM
# keys -> [String] (19.0) -
データベース中に存在するキー全てを含む配列を返します。
データベース中に存在するキー全てを含む配列を返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.keys #=> ["a", "b","c"] -
SDBM
# reject! { |key , value| . . . } -> self (19.0) -
ブロックを評価した値が真であれば該当する項目を削除します。
ブロックを評価した値が真であれば該当する項目を削除します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1 #=> #<SDBM:0xb7cc96f8>
p db1.reject!{ |key, value| key == 'a' } #=> #<SDBM:0xb7cc96f8> -
SDBM
# select {|key , value| . . . } -> [[String]] (19.0) -
ブロックを評価して真になった要素のみを配列に格納して返します。
ブロックを評価して真になった要素のみを配列に格納して返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1.clear
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.select{ |key, value| key == 'a' } #=> [["a", "aaa"]]
p db1.select{ |key, value| key != 'a' } #=> [["c", "ccc"], ["b", "bbb"]] -
SDBM
# shift -> [String] (19.0) -
データベース中の要素を一つ取り出し、データベースから削除します。
データベース中の要素を一つ取り出し、データベースから削除します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.shift #=> ["a", "aaa"] -
SDBM
# to _ a -> [[String]] (19.0) -
self の各要素を格納した配列を返します。
self の各要素を格納した配列を返します。
返される配列の1つの要素は [key, value] です。
つまり配列の配列を返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1.clear
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.to_a #=> [["a", "aaa"], ["b", "bbb"], ["c", "ccc"]] -
SDBM
# to _ hash -> Hash (19.0) -
self の各要素を格納したハッシュを返します。
self の各要素を格納したハッシュを返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1.clear
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.to_hash #=> {"a"=>"aaa", "b"=>"bbb", "c"=>"ccc"} -
SDBM
# values _ at(*keys) -> [String] (19.0) -
keys に対応する値を配列に格納して返します。
keys に対応する値を配列に格納して返します。
@param keys キー。複数指定可能です。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.values_at('a', 'b') #=> ["aaa", "bbb"] -
dbm (19.0)
-
DBM を Ruby スクリプトから扱えるようにするライブラリです。
DBM を Ruby スクリプトから扱えるようにするライブラリです。
扱えるキーや値のサイズはリンクしているライブラリに依存します。
作成されるデータベースはアーキテクチャに依存するため、作成した環境と異
なる環境ではデータベースが読み込めない可能性があります。
@see gdbm, sdbm, dbm(3) -
ruby 1
. 8 . 3 feature (19.0) -
ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))
ruby 1.8.3 feature
*((<ruby 1.8 feature>))
*((<ruby 1.8.2 feature>))
ruby 1.8.2 から ruby 1.8.3 までの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ... -
sdbm (19.0)
-
SDBM を Ruby スクリプトから扱うためのライブラリです。
SDBM を Ruby スクリプトから扱うためのライブラリです。
SDBM は DBM と同じように働くハッシュデータベースのライブラリです。
dbm とほぼ同じですが、外部のライブラリに依存しないのでどの環境
でも実行できるという利点があります。
キーや値に使用できるサイズには制限があります。
一つの要素のサイズがキー + 値 + 内部情報(16バイト)の
合計が 1024 バイトまでです。
@see dbm, gdbm