K-Prolog Compiler Version 6.0

内部データベース機能
内部データベースのキーに対していくつかのデータを記憶させる機能を
提供しています。
あるキーに対する最初のデータとして登録するためには
recorda/3を用い、
最後のデータとして登録するためには
recordz/3を用います。
登録位置を指定して登録するためには
recordn/4を用います。
データの検索には先頭からの番号によってデータを取得する
recordedn/4と
バックトラックによって順に取得する
recorded/3が用意されています。
また、データベース参照を用いた
instance/2によっても値を取得できます。
データの削除には
erase/1を用います。
あるキーに対する全データの削除には
eraseall/1が用意されています。
この他、キーに関する機能が用意されています。
あるキーに対して登録されているデータの個数を返すためには
record_count/2
を用います。また、現在値を持つキーのすべてを後戻りによって返すために
current_key/1が用意されています。
| recordn(@Key,@Term,+Position,-Ref) |
| Key | キー |
| Term | 項 |
| Position | 位置 |
| Ref | データベース参照 |
recorda/3は、項 Term を内部データベース中のキー Key の最初の値として記録します。
recordz/3は、項 Term を内部データベース中のキー Key の最後の値として記録します。
recordn/4は、項 Term を内部データベース中のキー Key のPosition番目の値として記録します。
キーは述語頭部の形でなければなりません。Positionは0以上の整数でなければなりません。
Ref はその値に対するデータベース参照で、
Ref から instance/2 を使って値 Term をとりだすことが出来ます。
エラー
| instantiation_error |
| type_error |
| permission_error |
| recorded(@Key,-Term,-Ref) |
| recordedn(@Key,-Term,+Position,-Ref) |
| Key | キー |
| Term | 項 |
| Position | 位置 |
| Ref | データベース参照 |
recorded/3は、内部データベース中の Key の値として記録されている項 Term を探し、後戻りによって1組づつ返します。
Term と Ref は Key のもとに記録されている順番に
それぞれその値とデータベース参照として統一化します。
recordesn/4は、内部データベース中の Key の値のI番目のものを探しTermに返します。
エラー
| instantiation_error |
| type_error |
erase/1は、データベース参照 Ref に対応する値を内部データベースからとり除きます。
eraseall/1は、内部データベース中から Key に対応する値をすべてとり除きます。
エラー
| instantiation_error |
| type_error |
データベース参照 Ref に対応する値を Term に単一化します。
Ref が erase によってとり除かれたデータベース参照であれば、この述語は失敗します。
エラー
| instantiation_error |
| type_error |
内部データベース中のキー Key に記録されている値の個数をNと単一化します。
値が1つもなければ失敗します。
エラー
| instantiation_error |
| type_error |
内部データベース中に値をもつキーを後戻りにより1個ずつ順に Key と単一化します。
エラー
| instantiation_error |
| type_error |
一つ上に戻る
組込み述語に戻る
目次に戻る