次のバージョンでインタフェースが結構かわるかも

marisa-trie に C 言語用のインタフェースを加えようと画策していたのですが,今あるインタフェースにも多少は手を加えることになりそうです.

# 今のインタフェースだと例外が放し飼い(投げっぱなし)なので,他のライブラリとの連携には使いにくいと思ったという理由もあります.

とりあえず,C++ 用のインタフェースと C 言語用のインタフェースで関数の名前(プレフィックス以外)が一致しないと使いにくい,もとい危ないので,メンバ関数の名前はいくつか調整することになると思います.

後は,C 言語用ということで,配列(実際にはポインタ)を受け取るインタフェースを提供するようになると,std::vector<const char *> と std::vector<char *> のオーバーロードなんかも蛇足っぽくなるので,この辺も調整する可能性が高いです.他にも,例外をライブラリ内部で処理するようにしたり,コールバック関数に void * の引数を加えたりと,いろいろやることはありそうです.

# 実のところ,さくっと仕上げてしまおうと考えていたものの,当初の予想よりも時間がかかりそうなので,保留することにしました.年次大会の論文も締切り間際にならないようにしたいところですし….