ICU-20250 make UnicodeSet(intprop=value) faster
- fastpath for UnicodeSet.add(new last range)
- fewer UnicodeSet memory allocations:
  initial internal list array, exponential array growth,
  allocate strings list/set only when first one is added
- faster CodePointTrie.getRange(): fewer calls to filter function
- revert UnicodeSet(intprop=value) from trie ranges to range starts + lookup
- cache per-int-prop range starts: fewer lookups

(cherry picked from commit 98f9170004c29388d756a8a283573164a7a26bef)
16 files changed
tree: f89ebfdfb94b81483031ba1fdd142d41769d85f1
  1. .github/
  2. icu4c/
  3. icu4j/
  4. tools/
  5. vendor/
  6. .appveyor.yml
  7. .cpyskip.txt
  8. .gitattributes
  9. .gitignore
  10. .travis.yml
  11. README.md
README.md

International Components for Unicode

This is the repository for the International Components for Unicode. The ICU project is under the stewardship of The Unicode Consortium.

ICU Logo

Build Status

BuildStatus
TravisCIBuild Status
Win x64 ReleaseBuild status
Win x86 ReleaseBuild status

Subdirectories and Information

License

Please see ./icu4c/LICENSE (C and J are under an identical license file.)

Copyright © 2016 and later Unicode, Inc. and others. All Rights Reserved. Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. Terms of Use and License