-
Notifications
You must be signed in to change notification settings - Fork 168
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
strprintfを改良してナロー文字も扱えるようにする #1810
strprintfを改良してナロー文字も扱えるようにする #1810
Conversation
✅ Build sakura 1.0.4060 completed (commit 09f2b5727a by @berryzplus) |
✅ Build sakura 1.0.4062 completed (commit 9ee5010469 by @berryzplus) |
CIの結果とカバレッジを見て追加コミットを積みました。 SonarCloud が検出した以下の Code Smells については対応しません。
|
✅ Build sakura 1.0.4063 completed (commit 269d9069b1 by @berryzplus) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
難しい修正のつもりはありません。
なんでレビュー付かないんですかね?
セルフレビューで改善点に気付いたので対応しようと思います。。。
✅ Build sakura 1.0.4064 completed (commit f1527fc6dc by @berryzplus) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
変更してもらってよいです。
Kudos, SonarCloud Quality Gate passed! |
✅ Build sakura 1.0.4068 completed (commit 4f9be05a50 by @berryzplus) |
approveありがとうございます。 |
👆コメントしたつもりが入ってなかったので、後追いで入れました。 |
PR の目的
タイトル通りです。
独自関数 strprintf を std::string でも使えるようにします。
これは #1722 の対策に必要と考えています。
カテゴリ
独自関数 strprintf の機能を拡充します。
サクラエディタの機能は増えないので、機能追加ではありません。
PR の背景
#1722 で
CPPA
の不具合が報告されています。修正したいのですが、
CPPA
は narrow 文字列を扱う機能なので、現状のstrprintf
だと対応に困ってしまいます。対策として、std::wstring のみに対応していた strprintf を、
std::stringでも扱えるように改良したいと思います。
PR のメリット
PR のデメリット (トレードオフとかあれば)
仕様・動作説明
アプリの仕様・機能に影響を与える変更ではありません。
WCHAR版を以下の4オーバーロードに組みなおし、同機能のCHAR版を追加します。
int vstrprintf(std::wstring& strOut, const WCHAR* pszFormat, va_list& argList)
確保済み文字列を受け取る高速版(va_list)int strprintf(std::wstring& strOut, const WCHAR* pszFormat, ...)
確保済み文字列を受け取る高速版(可変長引数)std::wstring vstrprintf(const WCHAR* pszFormat, va_list& argList)
出力先指定不要の簡易版(va_list)std::wstring strprintf(const WCHAR* pszFormat, ...)
出力先指定不要の簡易版(可変長引数)PR の影響範囲
ユーティリティ系関数の変更なので、あちこちに影響します。
テスト内容
基本的な機能確認を行えるようにテストケースを
2件3件 追加しています。CIビルドが通れば基本的な機能確認は問題ないと考えられます。
テスト1
手順
関連 issue, PR
#1722
参考資料