diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 15 |
1 files changed, 13 insertions, 2 deletions
| @@ -4,11 +4,11 @@ zg provides Unicode text processing for Zig projects. | |||
| 4 | 4 | ||
| 5 | ## Unicode Version | 5 | ## Unicode Version |
| 6 | 6 | ||
| 7 | The Unicode version supported by zg is 15.1.0. | 7 | The Unicode version supported by zg is `15.1.0`. |
| 8 | 8 | ||
| 9 | ## Zig Version | 9 | ## Zig Version |
| 10 | 10 | ||
| 11 | The minimum Zig version required is 0.14 dev. | 11 | The minimum Zig version required is `0.14`. |
| 12 | 12 | ||
| 13 | ## Integrating zg into your Zig Project | 13 | ## Integrating zg into your Zig Project |
| 14 | 14 | ||
| @@ -325,6 +325,17 @@ test "Normalization" { | |||
| 325 | try expect(try n.eql(allocator, "foϓ", "fo\u{03D2}\u{0301}")); | 325 | try expect(try n.eql(allocator, "foϓ", "fo\u{03D2}\u{0301}")); |
| 326 | } | 326 | } |
| 327 | ``` | 327 | ``` |
| 328 | The `Result` returned by normalization functions may or may not be copied from the | ||
| 329 | inputs given. For example, an all-ASCII input does not need to be a copy, and will | ||
| 330 | be a view of the original slice. Calling `result.deinit(allocator)` will only free | ||
| 331 | an allocated `Result`, not one which is a view. Thus it is safe to do | ||
| 332 | unconditionally. | ||
| 333 | |||
| 334 | This does mean that the validity of a `Result` can depend on the original string | ||
| 335 | staying in memory. To ensure that your `Result` is always a copy, you may call | ||
| 336 | `try result.toOwned(allocator)`, which will only make a copy if one was not | ||
| 337 | already made. | ||
| 338 | |||
| 328 | 339 | ||
| 329 | ## Caseless Matching via Case Folding | 340 | ## Caseless Matching via Case Folding |
| 330 | 341 | ||