Class: Omnizip::Formats::Rar3::Writer
- Inherits:
-
Omnizip::Formats::Rar::RarFormatBase
- Object
- Omnizip::Formats::Rar::RarFormatBase
- Omnizip::Formats::Rar3::Writer
- Defined in:
- lib/omnizip/formats/rar3/writer.rb
Overview
RAR v3 archive writer
Writes RAR 3.x format archives, creating headers and compressing file data according to the RAR v3 specification.
Instance Attribute Summary
Attributes inherited from Omnizip::Formats::Rar::RarFormatBase
Instance Method Summary collapse
-
#initialize ⇒ Writer
constructor
Initialize a RAR v3 writer.
-
#write_archive(io, entries) ⇒ void
Write a RAR v3 archive.
Methods inherited from Omnizip::Formats::Rar::RarFormatBase
#block_type_code, #block_type_name, #compress, #compression_method_code, #compression_method_name, #decompress, #dictionary_size_code, #encryption_algorithm, #read_archive, #supports_feature?, #verify_magic_bytes
Constructor Details
#initialize ⇒ Writer
Initialize a RAR v3 writer
29 30 31 32 |
# File 'lib/omnizip/formats/rar3/writer.rb', line 29 def initialize super("rar3") @compressor = Compressor.new end |
Instance Method Details
#write_archive(io, entries) ⇒ void
This method returns an undefined value.
Write a RAR v3 archive
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/omnizip/formats/rar3/writer.rb', line 39 def write_archive(io, entries) # Write marker block write_marker_block(io) # Write archive header write_archive_header(io) # Write file entries entries.each do |entry| write_file_entry(io, entry) end # Write terminator block write_terminator_block(io) end |