Name

SPVM::Immutable::StringList - Immutable string array

Usage

use Immutable::StringList;

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

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

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

# Get string value.
my $element = $list->get(2);

# Convert Immutable::StringList to string array.
my $array = $list->to_array;

Description

The Immutable::StringList class has methods to manipulate an immutable string array.

Fields

length

has length : ro int;

Gets the length field.

This field is the length of the elements of the list.

Class Methods

new

static method new : Immutable::StringList ($array : string[] = undef);

Create a new Immutable::StringList object using "new_len".

The passed length to "new_len" is the length of the array. If the array is undef, the length is 0.

The each string of the array is copied and to each value of the the created array and each string is made read-only.

Examples:

my $list = Immutable::StringList->new;
my $list = Immutable::StringList->new(["abc", "def", "ghi"]);

new_len

static method new_len : Immutable::StringList ($length : int);

Creates a new Immutable::StringList object with $length.

Exceptions:

$length must be greater than or equal to 0. Otherwise an exception is thrown.

Instance Methods

get

method get : string ($index : int);

Gets the element of the position of $index.

Exceptions:

$index must be greater than or equal to 0. Otherwise an exception is thrown.

$index must be less than the length of $list. Otherwise an exception is thrown.

to_array

method to_array : string[] ();

Converts the list to an array.

Copyright & License

Copyright (c) 2023 Yuki Kimoto

MIT License