NAME
Clownfish::ByteBuf - Growable buffer holding arbitrary bytes.
SYNOPSIS
my $buf = Clownfish::ByteBuf->new($byte_string);
my $byte_string = $buf->to_perl;
DESCRIPTION
CONSTRUCTORS
new
my $buf = Clownfish::ByteBuf->new($byte_string);
Create a ByteBuf containing the passed-in bytes.
METHODS
set_size
$byte_buf->set_size($size);
Resize the ByteBuf to size
. If greater than the object’s capacity, throws an error.
get_size
my $int = $byte_buf->get_size();
Return the size of the ByteBuf in bytes.
get_capacity
my $int = $byte_buf->get_capacity();
Return the number of bytes in the ByteBuf’s allocation.
cat
$byte_buf->cat($blob);
Concatenate the contents of Blob blob
onto the end of the original ByteBuf. Allocate more memory as needed.
yield_blob
my $blob = $byte_buf->yield_blob();
Return the content of the ByteBuf as Blob and clear the ByteBuf.
utf8_to_string
my $string = $byte_buf->utf8_to_string();
Return a String which holds a copy of the UTF-8 character data in the ByteBuf after checking for validity.
trusted_utf8_to_string
my $string = $byte_buf->trusted_utf8_to_string();
Return a String which holds a copy of the UTF-8 character data in the ByteBuf, skipping validity checks.
compare_to
my $int = $byte_buf->compare_to($other);
Indicate whether one ByteBuf is less than, equal to, or greater than another. The byte contents of the ByteBufs are compared lexicographically. Throws an exception if other
is not a ByteBuf.
Returns: 0 if the ByteBufs are equal, a negative number if self
is less than other
, and a positive number if self
is greater than other
.
clone
my $result = $byte_buf->clone();
Return a clone of the object.
INHERITANCE
Clownfish::ByteBuf isa Clownfish::Obj.