|
04a23663b0
|
Reorganize HuffmanTree & BlockSwitchTracker
|
2019-10-31 19:13:08 +01:00 |
|
|
974541b937
|
Minor BrotliLib refactoring (ranges, exceptions, formatting)
|
2019-10-31 19:13:08 +01:00 |
|
|
2f22139125
|
Fix window size crash & inefficiency when generating copy markers
|
2019-10-30 19:42:56 +01:00 |
|
|
f9838bca04
|
Improve efficiency of encoding Huffman tree repetition codes
|
2019-10-21 00:16:20 +02:00 |
|
|
4dc334cae9
|
Add information about bit counts to markers
|
2019-10-20 23:17:23 +02:00 |
|
|
94f3288bb7
|
Reimplement complex distance code construction & update documentation
|
2019-10-20 22:07:23 +02:00 |
|
|
87011bc853
|
Rewrite AlphabetSize.BitsPerSymbol to use Log2 utility class
|
2019-10-20 06:40:37 +02:00 |
|
|
79a96735a5
|
Move various log2(int) implementations into a utility class
|
2019-10-20 06:29:43 +02:00 |
|
|
cd2c37764e
|
Make MetaBlock classes (mostly) immutable
|
2019-10-19 15:27:39 +02:00 |
|
|
611fac1525
|
Properly implement and cleanup GetHashCode & Equals in BrotliLib
|
2019-10-19 15:27:39 +02:00 |
|
|
e84dcd4ac9
|
Address IDE suggestions (C# 8.0) & minor refactoring
|
2019-10-19 01:43:54 +02:00 |
|
|
b07c707759
|
Upgrade libraries to .NET Standard 2.1 and UI/test projects to .NET Core 3.0
|
2019-10-18 20:11:44 +02:00 |
|
|
53ed337a56
|
Fix typo in MultiTrie equality checking, causing broken cache
|
2019-10-06 07:08:45 +02:00 |
|
|
9d4fe1e47e
|
Update MultiTrie to use ValueTuple instead of KeyValuePair
|
2019-10-05 08:14:58 +02:00 |
|
|
271b43630e
|
Implement MultiTrie.Node caching for Brotli dictionary index
|
2019-10-05 08:14:47 +02:00 |
|
|
8ecdd90caa
|
Fix recently introduced crash w/ implicit distance code zero
Caused by d8a6713392
|
2019-10-05 04:19:24 +02:00 |
|
|
3294ac800e
|
Improve how CR/LF characters are displayed in markers
|
2019-10-04 16:47:55 +02:00 |
|
|
5b44cefe68
|
Update markers to include backreference & dictionary output
|
2019-10-04 16:18:05 +02:00 |
|
|
eb3833e4da
|
Fix off-by-x bug when generating dictionary references after hitting window size
|
2019-10-04 15:30:15 +02:00 |
|
|
d8a6713392
|
Fix broken generation of explicit distance codes 0
|
2019-10-04 15:15:27 +02:00 |
|
|
e18cede896
|
Add new Brotli dictionary index system
|
2019-10-03 21:56:17 +02:00 |
|
|
65dbe29dc6
|
Add a few utilities to CollectionHelper (ContainsAt, Skip)
|
2019-10-03 21:23:02 +02:00 |
|
|
b111f9bd25
|
Rework MultiTrie structure (less mess, less memory, more performance)
|
2019-10-03 18:59:37 +02:00 |
|
|
9da921fe52
|
Remove inefficient dictionary index
|
2019-10-03 17:17:21 +02:00 |
|
|
806c97748a
|
Fix Brotli insert© command serialization not picking distance codes efficiently
|
2019-07-09 15:55:27 +02:00 |
|
|
0b7aaec69d
|
Optimize complex distance codes (with no postfix) w/ unit tests
|
2019-07-09 15:00:21 +02:00 |
|
|
50035519f8
|
Make most marker values lazy
|
2019-07-08 23:46:26 +02:00 |
|
|
c3b66b50e9
|
Tweaks for minor performance improvements
|
2019-07-08 23:36:10 +02:00 |
|
|
05690a1bea
|
Improve marker memory usage by interning strings
|
2019-07-08 18:13:11 +02:00 |
|
|
895609c3f1
|
Use dummy writer to improve performance in transformations
|
2019-06-18 15:13:09 +02:00 |
|
|
8b289812bc
|
Add dummy BitWriter implementation
|
2019-06-18 15:08:30 +02:00 |
|
|
da910cc147
|
Refactor BitWriter, BitReader, and MarkedBitReader into interfaces
|
2019-06-18 15:06:39 +02:00 |
|
|
8c5ae6a960
|
Separate IBitSerializer into serializer & deserializer delegates
|
2019-06-18 05:00:33 +02:00 |
|
|
d59ea83f6e
|
Add license files for Brotli & FCTB
|
2019-05-30 17:40:30 +02:00 |
|
|
52d435dece
|
Fix invalid complex Huffman tree length codes generated for incomplete trees
|
2019-05-24 14:11:52 +02:00 |
|
|
6baa782fb9
|
Make DistanceParameters a readonly struct
|
2019-05-23 16:24:40 +02:00 |
|
|
82f212a4b8
|
Add marker for Brotli block-switch type value
|
2019-05-23 15:30:12 +02:00 |
|
|
1370231216
|
Add utility Set methods to ContextMap builder
|
2019-05-23 15:29:43 +02:00 |
|
|
74969f8c92
|
Implement Brotli block-switch command builder
|
2019-05-23 15:28:30 +02:00 |
|
|
f289bb2660
|
Update CompressedMetaBlockBuilder to use FrequencyLists
|
2019-05-23 14:18:55 +02:00 |
|
|
b90240c180
|
Update HuffmanTree.FromSymbols to use FrequencyList
|
2019-05-23 14:15:21 +02:00 |
|
|
2bfa048532
|
Add FrequencyList collection
|
2019-05-23 14:11:00 +02:00 |
|
|
62b5236455
|
Remove category parameter from CategoryMap.Select
|
2019-05-23 13:11:52 +02:00 |
|
|
9ab0520997
|
Determine BlockSwitchCommand type codes during serialization instead of storing them
|
2019-05-23 11:10:59 +02:00 |
|
|
ea0453f3cb
|
Implement workaround for incomplete Huffman tree generation
|
2019-05-22 21:52:28 +02:00 |
|
|
978725d5db
|
Change Range.ToString
|
2019-05-22 08:52:12 +02:00 |
|
|
6bb29382ec
|
Update exe & dll metadata
|
2019-05-20 12:12:19 +02:00 |
|
|
e39ddf5e27
|
Make ContextMap builder clone the final array
|
2019-05-20 09:48:05 +02:00 |
|
|
7e7b58e533
|
Fix broken implicit distance code 0 and dictionary distances in CompressedMetaBlockBuilder
|
2019-05-19 23:18:04 +02:00 |
|
|
5148994de4
|
Fix incorrect RingBuffer state after cloning
|
2019-05-19 22:46:31 +02:00 |
|