Commit Graph

23 Commits

Author SHA1 Message Date
Raph Levien a6db7c0256 Move lookups into own module 2019-04-16 10:56:44 -07:00
Raph Levien 9aacd59532 Move code out of tables
The code has been moved out of the tables module into perfect_hash, and
there is a bit more explanation in comments.
2019-04-16 10:42:11 -07:00
Raph Levien 274b267525 Use minimal perfect hashing for combining class lookup 2019-04-09 12:26:24 -07:00
Sujay Jayakar 35cc77d8ad Bump version to 0.1.8 2019-01-21 13:02:48 -08:00
Sujay Jayakar d9e05260c6 Merge branch 'master' into smallvec 2019-01-21 11:22:08 -08:00
David Judd 5685166427 Add quick check implementations for NFKC & NFKD 2019-01-12 14:44:53 -08:00
David Judd 79e9942f2a Add smallvec 2019-01-12 10:59:23 -08:00
Sujay Jayakar 7389eb31f1 Bump version (and update docs) 2018-05-09 12:39:23 -07:00
Sujay Jayakar ef9a4dd691 Implement Stream-Safe QuickCheck variant 2018-05-07 20:55:59 -07:00
Sujay Jayakar 4d7e81e0ab Add Stream-Safe Text Process (for interop with golang's unicode/norm package) 2018-05-01 21:43:04 -07:00
Sujay Jayakar 6a7e38e376 Refactor Unicode script, emit new tables, and add QuickCheck algorithm. 2018-05-01 21:00:38 -07:00
kwantam 7625142dee update version numbers in README and lib.rs comments 2016-12-23 15:47:20 -08:00
Simon Sapin 5d0443bd92 Add a char::is_combining_mark function.
This is used for international domain name validation:
http://unicode.org/reports/tr46/#Validity_Criteria

> The label must not begin with a combining mark, that is: General_Category=Mark.
2016-01-15 17:49:39 +01:00
kwantam 3cc8effc71 bump version to 0.1.0 2015-04-21 13:56:25 -04:00
Simon Sapin 0e7791feff Remove the str module and move its content to the crate top-level.
It not just about `str` anymore, since it now also accepts iterators.
2015-04-21 09:50:49 +02:00
Simon Sapin 1acccecfeb Use method syntax in tests. 2015-04-21 09:47:57 +02:00
Simon Sapin f2eb73d85f Remove test_casefold.
It’s not that useful, its input being all within ASCII and unaffected by normalization,
and it sets of bad example of `char.to_lowercase().next()`,
ignoring the rest of the `ToLowercase` iterator.
2015-04-21 09:42:44 +02:00
kwantam 4f6a6ca9ed Add APIs to normalize arbitrary char iterators rather than just str.
This enables not allocating memory for intermediate results
in algorithms like this part of Unicode’s [*canonical caseless matching*](
http://www.unicode.org/versions/Unicode7.0.0/ch03.pdf#G34145 ):

```rust
nfkd(default_case_fold(nfkd(default_case_fold(nfd(input)))))
```
2015-04-20 20:37:22 -04:00
kwantam db78f43c57 logo 2015-04-17 00:14:46 -04:00
kwantam 7a49d257eb add Unicode norms test suite; bump to ver 0.0.3 2015-04-15 15:40:06 -04:00
kwantam 0a336e55e4 fix description: UAX#15, not UAX#11 2015-04-14 22:02:06 -04:00
kwantam 462dd30d22 working build 2015-04-14 21:39:26 -04:00
kwantam 3f03c93a2f initial commit 2015-04-14 16:47:28 -04:00