-
Notifications
You must be signed in to change notification settings - Fork 120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
error_result_to_message関数で返ってくる文字列がnull終端文字列になってしまっている #275
Comments
ちょっと設計的にきれいなのか自信がないですが、 |
error.rsのbase_error_message のような実装に |
macro使用するのに抵抗があるのであれば、エラーメッセージの一部共通化をあきらめて別々に実装してしまうのも手かもしれませんね。 |
macro実装は特に抵抗ないです! |
マクロ実装って、 |
@qryxip そうですね。そんな感じです。 |
このissueにラベルを付けました (マクロ実装でやることにはみんな同意してそうなので) |
#553 をやってて思ったのですが、Python APIやJava APIが増えた今、C APIの
の「共通化」(
|
それもそうだなと思いました。エラーメッセージはわかりやすいほうが良いけど、constだとどうしても限界ありますし。 C APIとか用のconstエラーメッセージとそれ以外用のエラーメッセージをRust API内で両方定義しておけば、コピペの手間を一番削減できるかもとか思いました。 |
内容
C APIとの兼ね合いで
voicevox_core
crate にある error_result_to_message がnull終端文字列を返す実装になってしまっているnull終端文字列をなくしたいが、そうしてしまうと C API側の voicevox_error_result_to_message の実装に支障が出てしまい、かと言って
error_result_to_message
の実装をC API側に持っていってしまうとこんどは内部エラー型の一部共通化ができなくなってしまうできることならエラーメッセージの共通化を実現しつつ、 null終端文字列を付け加える処理のみをC API側に持っていくような感じの実装にしたい
Pros
null終端文字列というCの仕様に依存した実装を純粋なRust実装から取り除くことができる
Cons
具体的な改善実装案がない(macroでやる?)
The text was updated successfully, but these errors were encountered: