Enhancements
- Remove usage of Linq for less GC
- Add
IConvertable
support forPluralLocalizationFormatter
andConditionalFormatter
ListFormatter
- ListFormatter handles selector name "Index" in
IEnumerable
s andIList
s: Inv1.6.1
a Selector was tested for having the name "index", even if data was not anIList
, and returned theCollectionIndex
. This is now implemented again in theListFormatter.TryEvaluateSelector(...)
- Set the
ParentPlaceholder
property for itemFormat
s - Use
PooledObject<T>
where possible, so objects will be returned toObjectPool
also in case of exceptions
- ListFormatter handles selector name "Index" in
Fixes
FormatItem.AsSpan()
returns the correct name- Remove potential namespace collisions: All public types in namespace
Cysharp.Text
are now internal
What's Changed
- Upgrade projects targeting NET5.0 to NET6.0 by @axunonb in #286
- Refactor suggestions by @karljj1 in #290
- Refactored unit tests for ReflectionSource and thread-safe mode by @axunonb in #291
- Convert solution to file-scoped namespacing by @axunonb in #292
- Use
is
instead of checking the type info. by @karljj1 in #293 - SonarCloud do not support analysis of forked PRs by @axunonb in #294
- Avoid using Linq as it generates GC each time. by @karljj1 in #296
- IConvertible support for plural and conditional formatters by @karljj1 in #300
- Fixed: FormatItem.AsSpan() by @axunonb in #304
- Refactor ListFormatter by @axunonb in #305
- Ignore bools in plurals formatter. by @karljj1 in #306
- Change all public types in namespace Cysharp.Text to internal by @axunonb in #309
- ListFormatter handles selector name "Index" in IEnumerable and IList by @axunonb in #314
- Bump version to v3.2.0 by @axunonb in #315
Full Changelog: v3.1.0...v3.2.0