NAME
Mojo::Buffer - A Simple In-Memory Buffer
SYNOPSIS
use Mojo::Buffer;
my $buffer = Mojo::Buffer->new('foo');
$buffer->add_chunk('bar');
my $foo = $buffer->remove(3);
my $bar = $buffer->empty;
DESCRIPTION
Mojo::Buffer is a simple in-memory buffer. Functionality includes keeping track of the cumulative raw character length that has been in the buffer. Content may removed from the buffer by line or character count.
ATTRIBUTES
length
my $length = $buffer->length;
raw_length
my $raw_length = $buffer->raw_length;
Returns the cumulative length of the buffer. It never decreases.
METHODS
Mojo::Buffer inherits all methods from Mojo::Base and implements the following new ones.
new
my $buffer = Mojo::Buffer->new;
my $buffer = Mojo::Buffer->new('foobarbaz');
Returns a new Mojo::Buffer object, and possibly adds content to it.
add_chunk
$buffer = $buffer->add_chunk('foo');
Returns the invocant and adds additional content to the buffer.
empty
my $string = $buffer->empty;
Returns the whole content of the buffer and empties it.
get_line
my $line = $buffer->get_line;
Returns a whole line if a newline
is present in the buffer or undef, even if there is content in the buffer.
remove
my $string = $buffer->remove(4);
Returns and removes a specific number of bytes from the buffer.
to_string
my $string = $buffer->to_string;
Returns the whole buffer content at once.