Class | Senna::Index |
In: |
ext/senna/senna.c
|
Parent: | Object |
NORMALIZE | = | INT2NUM(SEN_INDEX_NORMALIZE) |
SPLIT_ALPHA | = | INT2NUM(SEN_INDEX_SPLIT_ALPHA) |
SPLIT_DIGIT | = | INT2NUM(SEN_INDEX_SPLIT_DIGIT) |
SPLIT_SYMBOL | = | INT2NUM(SEN_INDEX_SPLIT_SYMBOL) |
NGRAM | = | INT2NUM(SEN_INDEX_NGRAM) |
DELIMITED | = | INT2NUM(SEN_INDEX_DELIMITED) |
インデックスファイルの作成。
有効な option:
:key_size [Integer] : | キーのサイズ (default: 0) |
:flags [Integer] : | 次のフラグを「|」で連結したもの。Senna::Index::NORMALIZE, Senna::Index::SPLIT_ALPHA, Senna::Index::SPLIT_DIGIT, Senna::Index::SPLIT_SYMBOL, Senna::Index::NGRAM, Senna::Index::DELIMITED. (default: 0) |
:initial_n_segments [Integer] : | 初期バッファサイズ (default: 0) |
:encoding [Integer] : | 次のいずれか。Senna::ENC_DEFAULT(default), Senna::ENC_NONE, Senna::ENC_EUC_JP, Senna::ENC_UTF8, Senna::ENC_SJIS |
path [String] : | インデックスファイル名 |
Senna::Index オブジェクト
Senna::Error: | インデックスの作成に失敗した |
インデックスのオープン。
path [String] : | インデックスファイル名 |
Senna::Index オブジェクト
Senna::Error: | インデックスのオープンに失敗した |
インデックスのオープン。
path [String] : | インデックスファイル名 |
Senna::Index オブジェクト
Senna::Error: | インデックスのオープンに失敗した |
インデックスファイルのリネーム。
old_path [String] : | 元ファイル名 |
new_path [Stirng] : | 新ファイル名 |
Senna::Error: | インデックスのリネームに失敗した |
インデックスの検索。
有効な option:
:mode [Integer] : | 次のいずれか。Senna::SEL_EXACT, Senna::SEL_PARTIAL, Senna::SEL_UNSPLIT, Senna::SEL_NEAR, Senna::SEL_SIMILAR, Senna::SEL_PREFIX, Senna::SEL_SUFFIX |
:similarity_threshold [Integer] : | Senna API DOC 参照 |
:max_interval [Integer] : | Senna API DOC 参照 |
:weight_vector [Array of Integer] : | Senna API DOC 参照 |
:vector_size [Integer] : | Senna API DOC 参照 |
string [String] : | 検索する文字列 |
recs [Senna::Records] : | 結果が反映されるレコード群。未指定時は空の Senna::Records が作成される。 |
op [Integer] : | 次のいずれか。Senna::SEL_OR(default), Senna::SEL_AND, Senna::SEL_BUT, Senna::SEL_ADJUST |
Senna::Records : | recs と同じ。 |
レコードを追加する場合は old_value に nil を指定する。 レコードを削除する場合は new_value に nil を指定する。 レコードを更新する場合は old_value, new_value の両方を指定する。
有効な option:
:section [Integer] : | セクション番号 |
key [String/Integer] : | インデックス値 |
old_value [String/Senna::Values] : | 古いレコード |
new_value [String/Senna::Values] : | 新しいレコード |
RuntimeError : | インデックスがクローズ済み |
RuntimeError : | key のサイズがインデックスファイルのものとあっていない |
TypeError : | open() で key_size に Integer が指定されているのに、key が整数でない |
TypeError : | old_value, new_value が String でも Senna::Values でもない |