fix(validation): return no problems for null reference instance in Rule.Validate

Rule<T,TProperty>.Validate cast a null instance to T and validated it, so a
reference T whose accessor dereferences the instance threw
NullReferenceException on a direct validator.Validate(context) with a null
instance. Guard the null-instance path and return no problems instead.
This commit is contained in:
Louis Seubert 2026-07-12 18:43:37 +02:00
commit 581b0a1ced
Signed by: louis9902
GPG key ID: 4B9DB28F826553BD
3 changed files with 13 additions and 1 deletions

View file

@ -52,6 +52,7 @@ To have a consistent experience across all packages, some public interfaces have
- **request.result:** Correct the namespace in the `Prelude` doc comment (`Geekeey.Extensions.Result``Geekeey.Request.Result`)
- **request.result:** Fold `IsSuccess` into `Result<T>.GetHashCode` to avoid collisions between a failure and a success value whose hash is `0`
- **request.validation:** Guard null comparison bounds in `GreaterThan`/`LessThan`/`Between` etc. so a `null` bound no longer throws (`NullReferenceException`)
- **request.validation:** Return no problems when validating a `null` instance of a reference type instead of dereferencing it (`NullReferenceException`)
### Removed