Module: LZMA
- Includes:
- Constants, Exceptions
- Defined in:
- lib/extlzma2.rb,
lib/extlzma2/aux.rb,
lib/extlzma2/utils.rb,
lib/extlzma2/filter.rb,
lib/extlzma2/stream.rb,
lib/extlzma2/decoder.rb,
lib/extlzma2/encoder.rb,
lib/extlzma2/version.rb,
ext/extlzma2/extlzma2.c
Defined Under Namespace
Modules: Aux, Constants, Exceptions, Utils Classes: Decoder, Encoder, Filter, Index, Stream
Constant Summary collapse
- VERSION =
'2.0.0'
- LIBRARY_VERSION =
rb_ary_freeze(libver)
- LZMA =
extlzma_mLZMA
Class Method Summary collapse
-
.decode(src, *args, &block) ⇒ Object
call-seq: decode(string_data) -> decoded data decode(string_data, filter…) -> decoded data decode(input_stream) -> decoder decode(input_stream, filter…) -> decoder decode(input_stream) { |decoder| … }-> yield return value decode(input_stream, filter…) { |decoder| … }-> yield return value.
- .delta(*args) ⇒ Object
-
.encode(src = nil, *args, &block) ⇒ Object
call-seq: encode(string_data, preset = LZMA::PRESET_DEFAULT, opts = {}) -> encoded_xz_data encode(string_data, filter…) -> encoded_xz_data encode(output_stream = nil, preset = LZMA::PRESET_DEFAULT, opts = {}) -> stream_encoder encode(output_stream, filter…) -> stream_encoder encode(output_stream = nil, preset = LZMA::PRESET_DEFAULT, opts = {}) { |encoder| … } -> yield return value encode(output_stream, filter…) { |encoder| … } -> yield return value.
- .lzma1(*args) ⇒ Object
- .lzma2(*args) ⇒ Object
-
.raw_decode(src, *args, &block) ⇒ Object
call-seq: LZMA.raw_decode(encoded_data) -> decoded data LZMA.raw_decode(encoded_data, filter…) -> decoded data LZMA.raw_decode(inport) -> raw decoder LZMA.raw_decode(inport, filter…) -> raw decoder LZMA.raw_decode(inport) { |decoder| … } -> yield return value LZMA.raw_decode(inport, filter…) { |decoder| … } -> yield return value.
-
.raw_encode(src, *args, &block) ⇒ Object
call-seq: LZMA.raw_encode(src) -> encoded data LZMA.raw_encode(src, filter…) -> encoded data LZMA.raw_encode(outport = nil) -> encoder LZMA.raw_encode(outport, filter…) -> encoder LZMA.raw_encode(outport = nil) { |encoder| … } -> yield return value LZMA.raw_encode(outport, filter…) { |encoder| … } -> yield return value.
Class Method Details
.decode(src, *args, &block) ⇒ Object
call-seq:
decode(string_data) -> decoded data
decode(string_data, filter...) -> decoded data
decode(input_stream) -> decoder
decode(input_stream, filter...) -> decoder
decode(input_stream) { |decoder| ... }-> yield return value
decode(input_stream, filter...) { |decoder| ... }-> yield return value
圧縮されたデータを伸張します。
- RETURN decoded data
-
xz データストリームとしての String インスタンスです。
- RETURN decoder
- RETURN yield return value
- string_data
- RETURN yield return value
-
圧縮されたデータを与えます。圧縮されたデータの形式は xz と lzma です。これらはあらかじめ区別する必要なく与えることが出来ます。
- options
-
LZMA::Filter::LZMA2.new に渡される可変引数です。詳細は LZMA::Filter::LZMA2.new を見てください。
- EXCEPTIONS
-
(NO DOCUMENT)
79 80 81 |
# File 'lib/extlzma2.rb', line 79 def self.decode(src, *args, &block) Aux.decode(src, Stream.auto_decoder(*args), &block) end |
.delta(*args) ⇒ Object
145 146 147 |
# File 'lib/extlzma2.rb', line 145 def self.delta(*args) LZMA::Filter::Delta.new(*args) end |
.encode(src = nil, *args, &block) ⇒ Object
call-seq:
encode(string_data, preset = LZMA::PRESET_DEFAULT, opts = {}) -> encoded_xz_data
encode(string_data, filter...) -> encoded_xz_data
encode(output_stream = nil, preset = LZMA::PRESET_DEFAULT, opts = {}) -> stream_encoder
encode(output_stream, filter...) -> stream_encoder
encode(output_stream = nil, preset = LZMA::PRESET_DEFAULT, opts = {}) { |encoder| ... } -> yield return value
encode(output_stream, filter...) { |encoder| ... } -> yield return value
データを圧縮、または圧縮器を生成します。
圧縮されたデータ列は xz ファイルフォーマットとなるため、コマンドラインの xz などで伸張させることが可能です。
- RETURN encoded_xz_data
-
xz データストリームとしての String インスタンスです。
- RETURN stream_encoder
-
xz データストリームを生成する圧縮器を返します。
- RETURN output_stream
-
引数として渡した
output_stream
そのものを返します。 - string_data
-
圧縮元となるデータを String インスタンスで渡します。 liblzma はエンコーディング情報を無視し、そのままのバイト列をバイナリデータと見立て処理を行います。
- preset = LZMA::PRESET_DEFAULT
-
圧縮プリセット値を指定します (圧縮レベルのようなものです)。詳細は LZMA::Filter::LZMA2.new を見てください。
- opts
-
LZMA::Filter::LZMA2.new に渡される可変引数です。詳細は LZMA::Filter::LZMA2.new を見てください。
- filter
-
LZMA::Filter で定義されているクラスのインスタンスを指定します。最大4つまで指定することが出来ます。
- output_stream
-
圧縮データの受け皿となるオブジェクトを指定します。
.<<
メソッドが呼ばれます。 - YIELD RETURN
-
無視されます。
- YIELD encoder
-
圧縮器が渡されます。
- EXCEPTIONS
-
(NO DOCUMENT)
53 54 55 |
# File 'lib/extlzma2.rb', line 53 def self.encode(src = nil, *args, &block) Aux.encode(src, Stream.encoder(*args), &block) end |
.lzma1(*args) ⇒ Object
137 138 139 |
# File 'lib/extlzma2.rb', line 137 def self.lzma1(*args) LZMA::Filter::LZMA1.new(*args) end |
.lzma2(*args) ⇒ Object
141 142 143 |
# File 'lib/extlzma2.rb', line 141 def self.lzma2(*args) LZMA::Filter::LZMA2.new(*args) end |
.raw_decode(src, *args, &block) ⇒ Object
call-seq:
LZMA.raw_decode(encoded_data) -> decoded data
LZMA.raw_decode(encoded_data, filter...) -> decoded data
LZMA.raw_decode(inport) -> raw decoder
LZMA.raw_decode(inport, filter...) -> raw decoder
LZMA.raw_decode(inport) { |decoder| ... } -> yield return value
LZMA.raw_decode(inport, filter...) { |decoder| ... } -> yield return value
圧縮されたデータを伸張します。圧縮した際に用いたフィルタをそのままの順番・数で与える必要があります。
- RETURN decoded data
-
伸張されたデータ列となる String インスタンスです。
- src
-
圧縮された生の lzma1/lzma2 の String インスタンスを渡します。
- options
-
LZMA::Filter のインスタンスを与えます。最大4つまで指定可能です。
省略時は lzma2 フィルタが指定されたとみなします。
- EXCEPTIONS
-
(NO DOCUMENT)
133 134 135 |
# File 'lib/extlzma2.rb', line 133 def self.raw_decode(src, *args, &block) Aux.decode(src, Stream.raw_decoder(*args), &block) end |
.raw_encode(src, *args, &block) ⇒ Object
call-seq:
LZMA.raw_encode(src) -> encoded data
LZMA.raw_encode(src, filter...) -> encoded data
LZMA.raw_encode(outport = nil) -> encoder
LZMA.raw_encode(outport, filter...) -> encoder
LZMA.raw_encode(outport = nil) { |encoder| ... } -> yield return value
LZMA.raw_encode(outport, filter...) { |encoder| ... } -> yield return value
データを圧縮します。圧縮されたデータ列は生の lzma1/lzma2 のデータ列であるため、伸張する際に適切なフィルタを与える必要があります。
xz ファイルフォーマットヘッダや整合値を持たないため、これらが不要な場合は有用かもしれません。
- RETURN encoded data
-
生の lzma1/lzma2 のデータ列となる String インスタンスです。
- src
-
圧縮元となるデータを String インスタンスで渡します。
- filter
-
LZMA::Filter のインスタンスを与えます。最大4つまで指定可能です。
省略時は lzma2 フィルタが指定されたとみなします。
- EXCEPTIONS
-
(NO DOCUMENT)
107 108 109 |
# File 'lib/extlzma2.rb', line 107 def self.raw_encode(src, *args, &block) Aux.encode(src, Stream.raw_encoder(*args), &block) end |