Parser in fbxcel::pull_parser::v7400 - Rust
https://docs.rs/fbxcel/0.9.0/fbxcel/pull_parser/v7400/struct.Parser.html#method.set_warning_handler
昔なにか書いたときは、 warning handler に渡してそちら側で記憶なり出力なりしてもらうとともに中断/続行の決定もさせるようにした。これで良かったかはよくわからんが、合理的ではあると思っている
handler は内部的に型消去してるけど、これはエラーは基本的に少ないか、多い場合ならパフォーマンス悪化も許容されるだろうという判断から。
とはいえコンパイラのユーザは「成功するまで失敗を繰り返す」というワークフローをやりがちなので、そこは単なるデータのローダとは傾向が逆かも