50.3. 実装

GiST用の演算子クラスが提供しなければならない7つのメソッドを以下に示します。

consistent

ツリーページ上の述語p、ユーザの問い合わせqが与えられると、このメソッドは、もし与えられたデータ項目に対してpqが真になることができない場合、偽を返します。

union

このメソッドはツリー内の情報を結合します。 項目の集合が与えられると、この関数はすべての項目で真となる述語を新しく生成します。

compress

データ項目をインデックスページ内の物理的な格納に適した形式に変換します。

decompress

compressメソッドの逆です。 データ項目のインデックス表現から、データベースで扱うことができる書式に変換します。

penalty

新しい項目をツリーの特定の分岐点に挿入するための"コスト"を示す値を返します。 項目は、ツリー内でpenaltyが最小の経路に挿入されます。

picksplit

ページ分割が必要になった時、この関数は、ページ内のどの項目を古いページに残すか、および、どれを新しいページに移動するかを決定します。

same

2つの項目が同一の場合に真、さもなくば偽を返します。