フォロー

典型的に`Error<T::Error, U::Error>`のような形で使われる多相な`Error`の略記として、`type FooError<T, U> = Error<<T as Trait1>::Error, <U as Trait2>::Error>`のような別名を定義したいのだけど、しっくり来る名前が浮かばない

取りあえず滅茶苦茶雑に`ErrorFor`とか命名しておいたけど、いくら何でも雑すぎる。一応`type Result<T, U, V> = core::result::Result<T, ErrorFor<U, V>`も定義して典型的な例では雑命名を避けられるようにしたものの、やはりエラー単体で名指しせざるを得ない場面もある。
一応`Error`自体の定義を`enum Error<T: Trait1, U: Trait2>`に置き換える手もあるだろうけど、柔軟性が下がるし、持ち回すときに無駄なトレイト制約パズルが発生しそうなので、これも避けたいところ

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。