class Asar::Reader

Overview

Enables reading of files from the given archive with #get, #get_bytes and #read_raw.

Files are cached automatically when using #get or #get_bytes; data is stored inside a Hash. Please make sure that you have enough memory.

Note: When reading from the archive, you have to use absolute paths. The top level directory of the asar archive is the root. e.g.: /hello.txt. Paths are case-sensitive.

Defined in:

asar/reader.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(path : String) #

Creates a new Reader for the given archive file.


[View source]

Instance Method Detail

def files #

Returns an Array(String) that contains all files (absolute paths) that are in the archive.


[View source]
def files_cached #

Returns an Array(String) of all files in the cache.


[View source]
def get(path : String) : IO::Memory #

Returns an IO::Memory created from the cached file.


[View source]
def get_bytes(path : String) : Bytes #

Returns the cached file.


[View source]
def header : Header #

[View source]
def header=(header : Header) #

[View source]
def io : ::File #

[View source]
def io=(io : ::File) #

[View source]
def read_raw(path : String) : Bytes #

Reads directly from the files IO, bypassing the cache.


[View source]