go で雑に mysql の schema をパースして雑に2つの schema から差分を埋める sql を生成する

先日たまたま Lexical Scanning in Go, Handwritten Parsers & Lexers in Go という記事を見つけ面白そうだなと思ったので自分でも何かパースしてみるかという気持ちになった。

ただパースしたいものが特になかったのでなんとなく mysqlスキーマをパースしてみるかという気持ちになって

github.com

こういうものを書いてみた。が、思ってた以上に mysql の schema が省略とかが可能でめんどくさくなったのでなんとなく動く感じのところで一旦辞めた。なので雑にパースするということになってる。

一応雑にパース出来るようになったので雑に diff も生成するようにし、gitddl 的なのも一応

github.com

こういう感じで書いた。