File History

History of src/0dev.org/predictor/predictor.go

2014-12-25
08:48
[4f6ff0f55a] part of check-in [f06f8cd058] Allocate the predictor's decompression buffer per Read call. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
00:55
[3161320c11] part of check-in [4dfcff962c] Predictor's compressor and decompressor structures now implement io.Writer/io.Reader in order to deal away with function indirection but they do not follow the required semantics. Those are provided by the SizedWriter/SizedReader wrappers returned by the constructor functions. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
00:43
[cb877636af] part of check-in [50507bd510] Extracted predictor's compressor and decompressor code into separate structs that embed Sized{Writer,Reader} (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-24
21:40
[43e7f751ed] part of check-in [e1778aba98] Fixed SizedWriter behavior so that it follows io.Writer's Write(...) contract. Added more tests for 100% CC on the ioutil package. Predictor's compressor now uses SizedWriter and no longer has to do any internal buffering. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-23
20:53
[1bc0c5d728] part of check-in [11d1c50cd5] Renamed BlockReader to SizedReader, modified ioutil tests for 100% code coverage (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
18:52
[625ed7e8bc] part of check-in [38f8e62c81] Renamed MinReader to BlockReader. The later is now used by predictor's decompressor to simplify the code and deal away with the need for internal buffering. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
09:32
[7a1990432a] part of check-in [c62581c2a6] Removed the compressor alias type from predictor, use ioutil.WriterFunc (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
08:15
[4bb1d52139] part of check-in [2b049247ed] Removed the decompressor alias type from predictor, use ioutil.ReaderFunc (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-22
19:52
[290c8bbbe5] part of check-in [89bfe97384] Added documentation for the decompressor (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
19:28
[a4885df9dd] part of check-in [9dfd3cb1a2] Extracted the predictor's hash function as a method of the context struct. Minor changes to the decompressor's variables. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
17:15
[46cd9d5cef] part of check-in [27ecac81d3] Calculate the decompressed block length outside of the predictor loop (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
16:35
[71e92568a2] part of check-in [42ba1f458d] Decompressor - try to fill as much as possible in the output buffer in a single pass. (user: spaskalev branch: decompressor2) [annotate] [blame] [check-ins using] [diff]
15:34
[219e9c8a2d] part of check-in [e9b80a705b] Fixed a nasty variable shadowing bug :) (user: spaskalev branch: decompressor2) [annotate] [blame] [check-ins using] [diff]
14:23
[c018a46296] part of check-in [ae0940d072] Read available bytes and the end of the buffer and decompress in a singe pass (user: spaskalev branch: decompressor2) [annotate] [blame] [check-ins using] [diff]
2014-12-21
23:24
[9dfe9174f8] part of check-in [1f73d90f65] The decompressor now tries to fill in the whole output buffer in a single call. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
22:52
[090d2f3fd4] part of check-in [630530df49] Removed TODOs, renamed readCount->rc, wrapped->reader (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
22:12
[84146b7c8c] part of check-in [bd1368b81f] Check in the new decompressor implementation in a separate branch (user: spaskalev branch: decompressor2) [annotate] [blame] [check-ins using] [diff]
17:23
[d2a3bd9d21] part of check-in [7b74fd57f8] Fixed a rare case of losing data from the decompressor's internal result buffer. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-20
13:04
[90c8b12e57] part of check-in [d516e7425d] Decompressor might loose part of the underlying buffer array by reslicing, fixed by copy (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
11:52
[b8ee77a9c4] part of check-in [723ffeb1fd] [predictor] Removed the buffer from the context struct, allocate the input slice buffer on creation with make. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-19
21:54
[c65cc5c256] part of check-in [c9f3a59cb6] Implemented commands/pdc using predictor. Made predictor's Compressor(...) return an io.Writer. (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-16
23:29
[2cc1907fb9] part of check-in [0f4bc650d1] Removed err variable from compressor (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
22:56
[2d1c692ccb] part of check-in [1847f77062] Reworked the compressor's buffering code, switched to table testing, add step testing for the compressor. Code coverage at 88.3% (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
16:04
[0cc123a3c6] part of check-in [10013ae789] Removed goto from predictor's compressor, added more tests that invoke both compress/decompress (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
04:03
[f0ba5a860c] part of check-in [b838653282] Fixed issues with both compressor and decompressor, added more tests (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
01:55
[380067e183] part of check-in [60ca5b4b7b] Added hamming weight lookup table for bytes in package bits. Added a PoC predictor decompressor implementation (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using] [diff]
2014-12-15
21:22
Added [d4a72555aa] part of check-in [67794bdf14] Added diff.D struct; Added an RFC1978 Predictor compressor implementation and a test (user: spaskalev branch: trunk) [annotate] [blame] [check-ins using]