Commit Graph

  • bf91514ebb Use compressed jis0208 in Shift_JIS encode. Henri Sivonen 2017-01-20 10:00:55 +02:00
  • 35e18eccf9 Use compressed jis0208 for preflight in ISO-2022-JP encoder. Henri Sivonen 2017-01-20 08:49:59 +02:00
  • 14d7b51e3f Use compressed jis0208 for Shift_JIS decode. Henri Sivonen 2017-01-19 14:40:37 +02:00
  • 891b85bada Exclude Rust release channel from testing. Henri Sivonen 2017-01-19 12:52:18 +02:00
  • 223755f1a9 Use compressed jis0208 in ISO-2022-JP encode. Henri Sivonen 2017-01-19 12:47:44 +02:00
  • 7b6f93b505 Test jis0208 encode as ISO-2022-JP. Henri Sivonen 2017-01-19 12:39:08 +02:00
  • cd0a724954 Factor jis0208 Level 1 and 2 Kanji encode into functions. Henri Sivonen 2017-01-19 11:10:37 +02:00
  • 08eb96ba15 Use compressed jis0208 in ISO-2022-JP decode. Henri Sivonen 2017-01-19 11:03:03 +02:00
  • 6bc0d57ec0 Test jis0208 decode in ISO-2022-JP. Henri Sivonen 2017-01-19 10:46:22 +02:00
  • 6e0d578acc Compress jis0212. Henri Sivonen 2017-01-19 10:27:56 +02:00
  • 2263d8a6b4 Use compressed jis0208 data for EUC-JP encode. Henri Sivonen 2017-01-19 09:45:19 +02:00
  • 2adbaffe84 Use compressed jis0208 in EUC-JP decode. Henri Sivonen 2017-01-18 13:28:53 +02:00
  • be58cca786 Tidy up range checks gb18030 encode. Henri Sivonen 2017-01-13 11:07:48 +02:00
  • 95dbee7ab5 Use compressed tables for EUC-KR encode. Henri Sivonen 2017-01-13 10:48:46 +02:00
  • 362ccee402 Finish compressing EUC-KR decode. Henri Sivonen 2017-01-12 13:44:15 +02:00
  • 8d75c51ba8 Refactor cp949 left side handling and fix 0xFF as trail handling. Henri Sivonen 2017-01-12 12:24:48 +02:00
  • 7f940894d2 Compress EUC-KR decode except for top Hangul. Henri Sivonen 2017-01-12 12:13:07 +02:00
  • e6d25a0d34 Search GB2312_SYMBOLS less often. Henri Sivonen 2017-01-11 14:09:36 +02:00
  • 70a6ff68f6 Use compressed tables for gb18030 encode. Henri Sivonen 2017-01-11 11:58:36 +02:00
  • 54737baa25 Use compressed data for Unified Ideograph encode in gb18030. Henri Sivonen 2017-01-10 11:27:45 +02:00
  • 84f8238012 Compress the left side of GBK for decode. Henri Sivonen 2017-01-10 10:15:17 +02:00
  • b762e61bba Compress GB2312 and the top GBK range for decode. Henri Sivonen 2017-01-10 08:20:49 +02:00
  • 16c30fdb11 Update code generation to match recent changes. Henri Sivonen 2017-01-09 12:37:29 +02:00
  • 88b48cef5f Refactor gb18030 range decoding. Henri Sivonen 2017-01-09 12:25:35 +02:00
  • 2411b1a502 Use binary search for gb18030 ranges. Henri Sivonen 2017-01-09 11:58:52 +02:00
  • b457c5aad8 Remove remaining .h files. Henri Sivonen 2017-01-09 11:27:31 +02:00
  • ac89bfd352 Split out FFI. Henri Sivonen 2017-01-09 11:17:59 +02:00
  • e25205b0e7 Put Rayon on the roadmap. Henri Sivonen 2017-01-07 22:25:29 +02:00
  • 309c3cec1c Clarify that encoding_rs_compat cannot be uploaded to crates.io. Henri Sivonen 2017-01-05 13:30:46 +02:00
  • 2ac25a22f8 Update roadmap. Henri Sivonen 2017-01-05 13:27:10 +02:00
  • 9157b6c59b Test jis indices in EUC-JP mode. Henri Sivonen 2017-01-05 13:19:58 +02:00
  • fbe4d9d11e Test decoding all of jis0212. Henri Sivonen 2017-01-05 12:52:44 +02:00
  • 2ad16d47b6 Test encode and decode for all of Big5. Henri Sivonen 2017-01-05 12:32:53 +02:00
  • 5b7f28f728 Test encode and decode for all 2-byte gb18030 characters. Henri Sivonen 2017-01-05 11:45:52 +02:00
  • 692d4c3a6b Fix header formatting in Ideas.md. Henri Sivonen 2017-01-05 11:25:34 +02:00
  • 63be5ed699 Test encoding and decoding the entirety of EUC-KR. Henri Sivonen 2017-01-05 11:22:32 +02:00
  • 1a75a00473 Test Shift_JIS encode for the whole jis0208 index. Henri Sivonen 2017-01-05 11:12:10 +02:00
  • 49d5a55d92 Test decoding all two-byte Shift_JIS sequences. Henri Sivonen 2017-01-05 09:56:26 +02:00
  • 419a93312c Update 32-bit little-endian ALU code to match 64-bit little-endian code. Henri Sivonen 2017-01-04 11:51:37 +02:00
  • f45feb807f Factor finding non-ASCII in two ALU words into a reused function. Henri Sivonen 2017-01-04 11:44:12 +02:00
  • 50436f2d0c Check for non-Basic Latin instead of checking for Basic Latin first. Henri Sivonen 2017-01-04 11:39:42 +02:00
  • de77d2d738 Check for non-ascii cases first instead of checking for ASCII case. Henri Sivonen 2017-01-04 11:23:12 +02:00
  • 6bc233325e Count trailing zeros on ALU (64-bit little-endian). Henri Sivonen 2017-01-04 10:56:53 +02:00
  • 9b17dcb5f7 Run rustfmt. Henri Sivonen 2017-01-04 10:55:52 +02:00
  • 9994240750 Overwrite trailing garbage in &mut str to ensure UTF-8 validity. Henri Sivonen 2017-01-04 09:39:23 +02:00
  • 8d3a056fb8 Re-read non-ASCII from memory instead of extracting it from SSE2 reg. Henri Sivonen 2017-01-03 09:19:30 +02:00
  • 3251f4a926 Count trailing zeros in movemask when validating ASCII using SSE2. Henri Sivonen 2017-01-02 14:22:27 +02:00
  • 191e70389e Document why pointers are moved to alignment despite x86_64 perf. Henri Sivonen 2016-12-22 09:54:10 +02:00
  • 574c7e786a Change version number to 0.3.2. Henri Sivonen 2016-12-21 15:40:00 +02:00
  • b627bc0ccc Tweak changelog. Henri Sivonen 2016-12-21 15:39:23 +02:00
  • 163d9cddbc Document that the non-streaming API should be preferred due to borrows. Henri Sivonen 2016-12-21 15:38:42 +02:00
  • 4fe56f323b Move the non-streaming methods to come before the streaming factories. Henri Sivonen 2016-12-21 15:34:35 +02:00
  • d9de4deab4 Adjust documentation about borrows. Henri Sivonen 2016-12-21 15:31:14 +02:00
  • 14810b45af Document why there's no ASCII punctuation check in UTF-16 to UTF-8 enc. Henri Sivonen 2016-12-21 14:51:41 +02:00
  • c283487531 Move pointers to alignment correctly when ALU-accelerating ASCII. Henri Sivonen 2016-12-21 13:15:48 +02:00
  • 719cb540ec Double the stride size for ASCII-acceleration using the ALU. Henri Sivonen 2016-12-21 11:51:49 +02:00
  • 45884fb494 Fix rust-encoding API mapping doc for encode(). Henri Sivonen 2016-12-20 12:07:25 +02:00
  • 449f5146ee Change version number to 0.3.1. Henri Sivonen 2016-12-20 11:25:02 +02:00
  • ba24ace8bb Update releases notes. Henri Sivonen 2016-12-20 11:24:21 +02:00
  • 8e72aa4a26 Use wrapping_sub() for surrogate check in handles.rs. Henri Sivonen 2016-12-20 10:32:14 +02:00
  • 1dcb7e200c Remove unused method. Henri Sivonen 2016-12-20 09:56:07 +02:00
  • 9c21661010 Use wrapping_sub instead of bitand for surrogate check in UTF-8 encode. Henri Sivonen 2016-12-20 09:54:35 +02:00
  • 64976db27a Avoid macros in UTF-16 to UTF-8 encode. Henri Sivonen 2016-12-20 09:37:23 +02:00
  • b23102fadd Correctly convert UTF-8 sequences beginning with 0xEE to UTF-16. Henri Sivonen 2016-12-19 10:21:11 +02:00
  • 2d21fa8488 Document why UTF-8 validation has a separate tail ASCII check. Henri Sivonen 2016-12-19 09:08:36 +02:00
  • 1cce2572ce Remove unused tables. Henri Sivonen 2016-12-17 15:14:42 +02:00
  • 1ba7eee509 Document the reason for per-byte bound checks. Henri Sivonen 2016-12-17 15:14:09 +02:00
  • 5d47e65513 Match directly on lead by in UTF-8 validation. Henri Sivonen 2016-12-17 14:40:07 +02:00
  • 2984a8b0a3 Borrow ASCII in the non-streaming API with ASCII-compatible encodings. Henri Sivonen 2016-12-17 14:11:19 +02:00
  • 564deee8a6 Avoid re-checking ASCII. Henri Sivonen 2016-12-16 11:22:22 +02:00
  • f753ce6755 Change the loop structure of UTF-8 for consistency with other loops. Henri Sivonen 2016-12-16 11:14:15 +02:00
  • f904f08b4b Make UTF-8 validation use ASCII validation from ascii.rs. Henri Sivonen 2016-12-16 10:34:55 +02:00
  • 5ec3e9ba0f Run rustfmt. Henri Sivonen 2016-12-15 12:45:37 +02:00
  • 879fe1c227 Import UTF-8 validation from the Rust project. Henri Sivonen 2016-12-15 11:40:17 +02:00
  • 86afd99e46 Use the simd crate from crates.io instead of github.com/huonw. Henri Sivonen 2016-12-13 11:47:53 +02:00
  • 2baa9de4ae Change version number to 0.3.0. Henri Sivonen 2016-12-13 11:42:26 +02:00
  • cc6ee7046e Fix Markdown list formatting for the list of external examples. Henri Sivonen 2016-12-13 11:35:00 +02:00
  • 02fa3a8de0 Use pointer comparison instead of name comparison for Encoding. Henri Sivonen 2016-12-13 11:02:41 +02:00
  • f0fdb75a5c Expose Encoding instances via static instead of const. Henri Sivonen 2016-12-13 10:57:48 +02:00
  • 8502ec7ca1 Change variable name from string to cow in an example. Henri Sivonen 2016-12-13 10:07:53 +02:00
  • fc365e6081 Add notes about which AltiVec operations to use. Henri Sivonen 2016-11-28 09:18:54 +02:00
  • e7508695f3 Add a docs.rs badge. Henri Sivonen 2016-11-26 19:10:31 +02:00
  • ecad0524c0 rustc got better at identifying unreachable code. Henri Sivonen 2016-11-25 11:49:53 +02:00
  • 03647711a6 Add big-endian ASCII functions. Henri Sivonen 2016-11-25 11:10:01 +02:00
  • bba5a582d9 Add ALU-based ASCII acceleration for 32-bit little-endian systems. Henri Sivonen 2016-11-24 08:53:18 +02:00
  • 16977c0463 ALU-accelerate Basic Latin to ASCII on 64-bit little-endian systems. Henri Sivonen 2016-11-23 13:44:17 +02:00
  • 877b8c5b63 Roll back to stdlib UTF-8 validation. Henri Sivonen 2016-11-23 13:26:27 +02:00
  • e393cc53d1 Merge branch 'non-std-utf8-validation' Henri Sivonen 2016-11-23 13:24:12 +02:00
  • 88d6c0a1eb Link to example programs. Henri Sivonen 2016-11-23 13:15:56 +02:00
  • 188a9bd7b8 Update release notes. Henri Sivonen 2016-11-23 11:56:49 +02:00
  • 3113b1dbdf Make the Rust-only complete-input decode methods return Cows for UTF-8. Henri Sivonen 2016-11-23 11:45:33 +02:00
  • d231051ac1 Slower-than-std custom UTF-8 validation. Henri Sivonen 2016-11-22 15:18:59 +02:00
  • 86fae82a02 Matching directly on lead byte is faster that following the std lib! Henri Sivonen 2016-11-21 16:44:39 +02:00
  • 377f4584ba Separating non-punctuation and punctuation ASCII hurts but helps little. Henri Sivonen 2016-11-21 16:19:14 +02:00
  • 981610420f Move trail bits to the top of the byte. Henri Sivonen 2016-11-21 14:46:31 +02:00
  • 27e52d7460 Remember to read a new byte before breaking the inner loop. Henri Sivonen 2016-11-21 14:42:11 +02:00
  • 2f75d187f4 Combine the trail tables. This has minimal perf impact. Henri Sivonen 2016-11-21 14:33:50 +02:00
  • eb1c6ac978 Run rustfmt. Henri Sivonen 2016-11-21 13:21:16 +02:00
  • d7889c430a Check source bounds once per character instead of per byte. Henri Sivonen 2016-11-21 13:20:40 +02:00
  • 30dacbb727 Fix the end of the Shift_JIS EUDC range per whatwg/encoding#53. Henri Sivonen 2016-11-21 11:13:58 +02:00