OpenSiv3D
OpenSiv3D copied to clipboard
C++20 framework for creative coding 🎮🎨🎹 / Cross-platform support (Windows, macOS, Linux, and the Web)
**エラーの内容 | Describe the runtime error** `RegExp::match()`を使用する際、パターンに対してキャプチャに失敗するような入力を行うとstd::out_of_range例外が発生します。 Onigurumaではキャプチャに失敗するとRegionの`beg`,`end`に`ONIG_REGION_NOTPOS`(-1)が代入されるようになっており、Siv3D側でそれを考慮しないまま処理をするため例外になったようです。 https://github.com/Siv3D/OpenSiv3D/blob/cb0b930bdc46700a87abd166ff3d921a51800aed/Siv3D/src/Siv3D/RegExp/RegExpDetail.cpp#L117-L123 また、破壊的変更になりますが、例えば`MatchResults`から帰る値を`StringView`から`Optional`にするのが良さそうに思います。 **再現方法 | To Reproduce** ```cpp # include // OpenSiv3D v0.6.5 void Main() { // abc // def for (auto result...
## 発生している問題 `s3d::Array` や `std::vector` などのコンテナのアロケータとして `s3d::Allocator` を使用しようとすると、次のようにコンパイルエラーが出ます。 ```c++ # include // OpenSiv3D v0.6.5 void Main() { Array a; // error! Grid g; // error! std::vector v; // error! std::list...
`Array` の推論補助について、下の5点を提案します。 - `Array(std::initializer_list, const Allocator&)` に対する推論補助を追加 - `Array(const ArrayIsh& a)` を `Array(ArrayIsh&&)` に変更して引数を右辺値参照で受け取る場合に対応 - `decltype(std::declval().asArray())` を `std::remove_cvref_t` に変更して `asArray()` の戻り値が参照である場合に対応 - `Array(ArrayIsh&&) -> Array` を `Array(ArrayIsh&&) -> Array` に変更して...
**追加する機能の内容 | Describe the solution you'd like** 基底クラスInvokerを派生させたFunctorを使用することで、型が一致しない関数型変数を配列等で所持できる **その機能の追加によって解決する問題 | Is your feature request related to a problem? Please describe.** 引数の型と個数を縛られないので自由な関数型変数の使用が可能になる **備考 | Additional context** 注意 ・Invokerから戻り値を得ることは不可能 ・Invokerから引数の値を変えることは不可能 ・Functorのメモリは引数の多さに依存 ```cpp...
**追加する機能の内容 | Describe the solution you'd like** 指定されたURL/パスをOSに関連付けられたアプリで開きたいです。 このパスには - 絶対パス - 相対パス - UNCパス (Windowsのみ) - URIパス を含みます。 **その機能の追加によって解決する問題 | Is your feature request related to a problem? Please...
参考: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files
サイズが 0 の長方形を「空の長方形」とする。 - `Rect::isEmpty()`, `Rect::operator bool` #880 - `Rect::getOverlap(cother)` #872 - `static Rect Rect::Empty()` #881 RectF も同様に。