κeenです。最近KeenS/transaction-rs: The transaction abstraction library and its executors for rustというライブラリをリリースしたのでそれについて。 モチベーション Rustでドメインロジックを書いていると以下のようなコードが出てきました。 (実際はもうちょっと複雑ですが本質ではないので簡略化します) struct GroupPgDao(r2d2::Pool<ConnectionManager<PgConnection>>); impl GroupPgDao { fn get_conn(&self) -> &PgConnection { /*... */ } fn delete_user(&self, user: &User, group: &Group) -> Result<()> { let cn =