* ext/zlib/zlib.c (Init_zlib): Added Zlib::FIXED and Zlib::RLE

strategies.
* NEWS:  Add note about the new Zlib constants.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
drbrain 2012-02-15 01:28:05 +00:00
Родитель a1aeb842d0
Коммит 623169a5c6
3 изменённых файлов: 30 добавлений и 1 удалений

Просмотреть файл

@ -1,3 +1,9 @@
Wed Feb 15 09:27:45 2012 Eric Hodel <drbrain@segment7.net>
* ext/zlib/zlib.c (Init_zlib): Added Zlib::FIXED and Zlib::RLE
strategies.
* NEWS: Add note about the new Zlib constants.
Wed Feb 15 09:11:36 2012 Eric Hodel <drbrain@segment7.net>
* ext/zlib/zlib.c: Improve documentation. [ruby-trunk - Bug #5948]

3
NEWS
Просмотреть файл

@ -62,6 +62,9 @@ with all sufficient information, see the ChangeLog file.
* Shellwords#shelljoin() accepts non-string objects in the given
array, each of which is stringified using to_s.
* zlib
* Added support for the new deflate strategies Zlib::RLE and Zlib::FIXED.
=== Language changes
=== Compatibility issues (excluding feature bug fixes)

Просмотреть файл

@ -1329,13 +1329,21 @@ rb_deflate_s_allocate(VALUE klass)
*
* Zlib::FILTERED::
* For data produced by a filter (or predictor). The effect of FILTERED is
* to force more Huffman coding and less string matching; it is somewhat
* to force more Huffman codes and less string matching; it is somewhat
* intermediate between DEFAULT_STRATEGY and HUFFMAN_ONLY. Filtered data
* consists mostly of small values with a somewhat random distribution.
*
* Zlib::FIXED::
* Prevents the use of dynamic Huffman codes, allowing for a simpler decoder
* for specialized applications.
*
* Zlib::HUFFMAN_ONLY::
* Use Huffman encoding only (no string matching).
*
* Zlib::RLE::
* Designed to be almost as fast as HUFFMAN_ONLY, but give better
* compression for PNG image data.
*
* == Examples
*
* === Basic
@ -4209,6 +4217,18 @@ Init_zlib()
*
* Which is an argument for Deflate.new and Deflate#params. */
rb_define_const(mZlib, "HUFFMAN_ONLY", INT2FIX(Z_HUFFMAN_ONLY));
#ifdef Z_RLE
/* compression method 3
*
* Which is an argument for Deflate.new and Deflate#params. */
rb_define_const(mZlib, "RLE", INT2FIX(Z_RLE));
#endif
#ifdef Z_FIXED
/* compression method 4
*
* Which is an argument for Deflate.new and Deflate#params. */
rb_define_const(mZlib, "FIXED", INT2FIX(Z_FIXED));
#endif
/* compression method 0
*
* Which is an argument for Deflate.new and Deflate#params. */