Method: LZMA.encode

Defined in:
lib/extlzma2.rb

.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