J. King
c2a8b1ba52
Style fixes
6 years ago
J. King
bfc6c677c5
Complete Big5 tests, with numerous fixes
6 years ago
J. King
5217a6c0bc
Tidying
6 years ago
J. King
32d7fc47b0
Fix HTML test generator; clean up
6 years ago
J. King
55cbc915c3
Refactor HTML-based test generators
6 years ago
J. King
63fccc3c3a
Test UTF-16 EOF handling better
6 years ago
J. King
4a091610e9
Initial implementation of Big5 encoding
Only the decoder is tested, and even that requires more thorough testing.
Testing of seeking and encoding still to come
6 years ago
J. King
d5327a3b83
Implement x-user-defined decoder
Also further refactored tests to better account for one-way encodings
6 years ago
J. King
dd9bed2e84
Implement UTF-16
6 years ago
J. King
e683167905
Style fixes
Because of the large arrays in the GBCommon class and its test suite,
memory limits had to be disabled in php-cs-fixer
6 years ago
J. King
1449fae908
Refactor UTF-8 seeking
6 years ago
J. King
e4b6acb24a
Refactor tests
6 years ago
J. King
4c686aa8a1
Complete battery of tests for gb18030
6 years ago
J. King
1b9889914a
Fix numerous bugs with gb18030
6 years ago
J. King
467c565e8c
Implement gb18030 seeking
Also fix some bugs in EOF handling
6 years ago
J. King
40d0054bd1
Implement gb18030 and GBK encoders
6 years ago
J. King
d6747532cd
Implement gb18030 decoder
6 years ago
J. King
3ee653307c
Implement all other single-byte encodings
6 years ago
J. King
269ecf4a96
Style fixes
6 years ago
J. King
7de6d7a6fc
Implement ISO-8859-6 single-byte encoding
Other single-byte encodings to follow
6 years ago
J. King
540d8a237e
Style fixes
6 years ago
J. King
e2c4136001
Change iterator to a set of generators
Not only is the faster than a classical iterator (though still not as
fast as a while loop), but it also offers the choice of characters
or code points.
6 years ago
J. King
7f2c11dcc2
Make the iterator iterate over code points rather than characters
Also fix performance measurement for the iterator; it was all wrong.
6 years ago
J. King
cb1cab9d84
Implement fatal replacement mode
6 years ago
J. King
4ca07befe5
Change API symbols for greater consistency and clarity
6 years ago
J. King
ccf1fe180a
More safely back up state
6 years ago
J. King
8f7a7ed49e
Add basic iterator implementation
6 years ago
J. King
e12fc0d77f
Reorganize namespaces anticipating future internationalization tasks
6 years ago
J. King
51f7bbc5f7
Test encoder
6 years ago
J. King
72291b5f0d
Implement string length
6 years ago
J. King
5c21a3634c
Implement peeking
6 years ago
J. King
41a3a7bb5e
Clean up
6 years ago
J. King
88497ddc41
Remove functional interface
The maintenance burden is not worth the advantages it provides in
limited situations.
Moreover, if other decoders are to be implemented, most multi-byte
schemes would not be able to support a functional interface of similar
simplicity, and single-byte schemes wouldn't benefit much
6 years ago
J. King
ca91a86744
Clean up static-method interface and test it
6 years ago
J. King
34eee5fcc3
Rename test case file
6 years ago
J. King
b32b1ec038
Style fixes
6 years ago
J. King
6fd50f0681
Ensure char and byte position never goes beyond the end of the string
6 years ago
J. King
9fba89ebda
Tested seeking
6 years ago
J. King
a99702d4ab
More robust self-synchronization
6 years ago
J. King
c11da3ac6b
Remove now unnecessary data generator
6 years ago
J. King
b871c4f2fd
Implement seeking backward though a string
6 years ago
J. King
1ed3c36a65
Start on alternate object-based interface
This is both simpler, and slightly faster, yielding between 2% and 5% faster performance
6 years ago
J. King
434e41cc2c
Initial round of decoding tests, with one fix
7 years ago
J. King
9062f4e6a6
Add infrstructure required for tests
7 years ago