- ライブラリ多すぎて使ったことあるやつをまとめたかった。
- rusqliteを触ってみたかった。
- init
- enu [子モジュールを列挙したいモジュールのパス]
- add [モジュール名] [モジュールのurl] [親モジュール]
- delete [消したいモジュールへのパス]
- rename [名前を変えたいモジュールへのパス] [新しい名前]
基本名前通り。initでMAINテーブルを作るからinitしないと何もできない
MAINっていうテーブルにidと名前とurlと追加日を入れていて、enuで列挙する。
モジュールごとにテーブルを作っていて、子モジュールを追加するときはidだけ入れていく。
パスを解決するときはid->名前->テーブル名を繰り返して再帰的に探す。
名前は一緒でも名前空間が違うモジュールがあるとき、テーブル名が一緒になってしまうのを防ぐため、テーブル名は{モジュール名}_{id}となっている。
何を追加しても必ずテーブル作るのは数が少なければいいけど増やしていけば重くなりそう。パスを解決しようとしたらテーブルがなかった場合にだけ新しく作るようにしてもいいかもしれない。
一回追加したら変えれないのはミスなしだといいんだけどミスしたときに毎回deleteして入れなおさないといけない。renameを一般化したい。
テストプログラムを分けたい。
もうちょっと効率的なパスの解決ありそう。
タグとかつけたい。イテレーターに関係するモジュールのみとか。
親モジュール->子モジュールっていう追加の順番もできるようにしたい。