Replaces the Convert.ChangeType(valuePart.ToString(), typeof(T)) fallback in TryParseValue with a compile-time ISpanParsable<T>.TryParse dispatch (T is known from CompareValues, so no reflection/boxing/allocation). Fixes a latent bug: TimeSpan is not IConvertible, so the old path threw and silently returned no-match; TimeSpan property searches now work. Not reusing Server.Types.TryParse here on purpose — it mutates shared static state without locking and this path runs on parallel worker threads. |
||
|---|---|---|
| .. | ||
| Application | ||
| BuildTool | ||
| Logger | ||
| Server | ||
| Server.Tests | ||
| UOContent | ||
| UOContent.Tests | ||