Class: LibLZMA::Stream::Encoder
- Inherits:
-
LibLZMA::Stream
- Object
- LibLZMA::Stream
- LibLZMA::Stream::Encoder
- Defined in:
- ext/liblzma.c
Instance Method Summary collapse
-
#LZMA::Stream::Encoder.new(filter1[ , filter2 [ , filter3 [ , filter4 ] ] ], check: CHECK_CRC64) ⇒ Object
constructor
圧縮器を生成します。圧縮されたデータストリームは xz ファイルフォーマットです。.
Methods inherited from LibLZMA::Stream
auto_decoder, decoder, encoder, #finish, #flush, raw_decoder, raw_encoder, #update
Constructor Details
#LZMA::Stream::Encoder.new(filter1[ , filter2 [ , filter3 [ , filter4 ] ] ], check: CHECK_CRC64) ⇒ Object
圧縮器を生成します。圧縮されたデータストリームは xz ファイルフォーマットです。
- filter1, filter2, filter3, filter4
-
LZMA::Filter インスタンス。最低一つを必要とします。
- check
-
チェックメソッド。CHECK_NONE CHECK_CRC32 CHECK_CRC64 CHECK_SHA256 のいずれかの定数を与えます。
- RETURN
-
生成された圧縮器
- EXCEPTIONS
-
(NO DOCUMENTS)
936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 |
# File 'ext/liblzma.c', line 936
static VALUE
encoder_init(int argc, VALUE argv[], VALUE self)
{
VALUE vcheck;
rb_scan_args(argc, argv, "13:", NULL, NULL, NULL, NULL, &vcheck);
uint32_t check;
if (NIL_P(vcheck)) {
check = LZMA_CHECK_CRC64;
} else {
check = NUM2UINT(vcheck);
argc --;
}
lzma_filter filters[LZMA_FILTERS_MAX + 1];
memset(filters, 0, sizeof(filters));
filter_setup(filters, argv, argv + argc);
lzma_stream *stream = getstream(self);
LZMA_TEST(lzma_stream_encoder(stream, filters, check));
return self;
}
|