NAME

Mojo::Asset::Memory - In-memory asset

SYNOPSIS

use Mojo::Asset::Memory;

my $mem = Mojo::Asset::Memory->new;
$mem->add_chunk('foo bar baz');
say $mem->slurp;

DESCRIPTION

Mojo::Asset::Memory is a container for in-memory assets.

ATTRIBUTES

Mojo::Asset::Memory inherits all attributes from Mojo::Asset and implements the following new ones.

max_memory_size

my $size = $mem->max_memory_size;
$mem     = $mem->max_memory_size(1024);

Maximum asset size in bytes, only attempt upgrading to a Mojo::Asset::File object after reaching this limit, defaults to the value of MOJO_MAX_MEMORY_SIZE or 262144. Note that this attribute is EXPERIMENTAL and might change without warning!

METHODS

Mojo::Asset::Memory inherits all methods from Mojo::Asset and implements the following new ones.

new

my $mem = Mojo::Asset::Memory->new;

Construct a new Mojo::Asset::Memory object.

add_chunk

$mem     = $mem->add_chunk('foo bar baz');
my $file = $mem->add_chunk('abc' x 262144);

Add chunk of data and upgrade to Mojo::Asset::File object if necessary.

contains

my $position = $mem->contains('bar');

Check if asset contains a specific string.

get_chunk

my $chunk = $mem->get_chunk($offset);

Get chunk of data starting from a specific position.

move_to

$mem = $mem->move_to('/foo/bar/baz.txt');

Move asset data into a specific file.

size

my $size = $mem->size;

Size of asset data in bytes.

slurp

my $string = mem->slurp;

Read all asset data at once.

SEE ALSO

Mojolicious, Mojolicious::Guides, http://mojolicio.us.