コレクターは、2つの入力値を1つの値に結合します。 Droonga Engineは3つ以上の値に対しても、指定されたコレクターを繰り返し適用することによって、それらを1つの値にします。
組み込みのプラグインによって使われている、定義済みのコレクタークラスがいくつかあります。 これらは当然ですが、自作プラグインからも利用することができます。
Droonga::Collectors::And
and
論理演算子によって2つの値を比較した結果を返します。
両方の値が論理的に真である場合、どちらかの値が返されます(どちらが返されるかは不定です)。
null
(nil
) および false
は論理的に偽として扱われ、それ以外の場合はすべて真として扱われます。
Droonga::Collectors::Or
or
論理演算子によって2つの値を比較した結果を返します。
片方の値だけが論理的に真である場合、その値が返り値となります。
そうでなく2つの値が論理的に等しい場合は、どちらかの値が返されます(どちらが返されるかは不定です)。
null
(nil
) および false
は論理的に偽として扱われ、それ以外の場合はすべて真として扱われます。
Droonga::Collectors::Sum
2つの値のまとめた結果を返します。
このコレクターは若干複雑な動作をします。
null
(nil
) である場合、もう片方の値を返します。a + b
の結果を値として返します。