いい感じに合体したクラスに近い。インクリメントされている。これはテーブルのステータス系表示に使われる。読み取りフラグを立てているがそのフラグが一体どこで利用されているかはわからない。その次は、前述の書き込み用のファイルディスクリプタを取得するやつ。直してかえしてくれるやつぐらいのイメージしかないが全くわからない。これをあとは最初に取得したファイルディスクリプタに登録するだけ。コードにあるがこれを参考にして作られているものが多いのでこれをみるべきだったかもしれない。テーブルスキャンいよいよラスト、だがこれが一番面倒。実装する関数が以下のように複数ある。行スキャンする場合はこう呼び出される。行レベルロックやテーブルレベルロックなど内部ロックに関する実装をする。系の場合は排他ロックをセットする。実装これは外部ロックに関する実装。具体的にはデータファイルに対するファイルロックを実装する。これも今回は実装しないのでそのまま。実装テーブルスキャンでしようする変数などを初期化するメソッド。ポジションに関する情報を初期化しておく。実装これは先に実装を載せる。文を追加しないといけない。これはソースコードのコメントの注意書きにあった。状態で今回は放置する。実装これがファイルからレコードを読み込むメソッドとなる。書き込みの時とほぼ同じ処理をする。この書き込み時の話は度々参考にしている以下のブログによくまとまっている。関することは調べることが多すぎてめちゃくちゃ駆け足になってしまったのでまたこの手のブログを書くときに実装を追っていきたい。今回はじめて書いたけどわからない文法が多すぎるからそっちもやらねば。卒論執筆のいい気分転換になった*1:ストレージエンジンに限らず、プラグインはこのような定義をソースコード末尾に持っている。