NAME

SPVM::StringList - Continuous dynamic string array

SYNOPSYS

use SPVM::StringList;

# Create a string list
my $string_list = SPVM::StringList->new_len(10);

# Create a string list with array
my $string_list = SPVM::StringList->new(["abc", "def", "ghi"]);

# Get list length
my $length = $string_list->length;

# Push string value
$string_list->push("abc");

# Pop string value.
my $string_value = $string_list->pop;

# Unshift string value.
$string_list->unshift("abc");

# Shift string value.
my $string_value = $string_list->shift;

# Set string value.
$string_list->set(2, "abc");

# Get string value.
my $string_value = $string_list->get(2);

# Insert string value
$string_list->insert(1, "abc");

# Remove string value
my $string_value = $string_list->remove(1);

# Convert SPVM::StringList to string array.
my $string_array = $string_list->to_array;

DESCRIPTION

SPVM::StringList is continuous dynamic string array.

STATIC METHODS

new

sub new : SPVM::StringList ($array : string[])

Create a new SPVM::StringList object with specific string array.

new_len

sub new_len : SPVM::StringList ($length : int)

Create a new SPVM::StringList object with array length.

INSTANCE METHODS

length

sub length : int ()

Get list length.

push

sub push : void ($self : self, $value : string)

Appending the value to the end of list.

pop

sub pop : string ($self : self)

Pops and returns the last value of the list, shortening the array by one element If there are no elements in the list, exception occur.

unshift

sub unshift : void ($self : self, $value : string)

Appending the value to the top of list.

shift

sub shift : string ($self : self)

Shifts the first value of the list off and returns it, shortening the array by 1 and moving everything down. If there are no elements in the list, exception occur.

set

sub set : void ($self : self, $index : int, $value : string)

Set the value with index.

get

sub get : string ($self : self, $index : int)

Get the value with index.

insert

sub insert : void ($self : self, $index : int, $value : string)

Insert a element to the specific index.

remove

sub remove : string ($self : self, $index : int)

to_array

sub to_array : string[] ($self : self)

Convert SPVM::StringList to string array.