---
name: "List::Objects::WithUtils::Array::Immutable"
section: "3pm"
platform: "linux"
package: "liblist-objects-withutils-perl"
version: "2.028003-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/List::Objects::WithUtils::Array::Immutable"
---

# List::Objects::WithUtils::Array::Immutable(3pm)

Immutable array objects

## NAME

List::Objects::WithUtils::Array::Immutable - Immutable array objects

## SYNOPSIS

```
  use List::Objects::WithUtils 'immarray';
  my $array = immarray(qw/ a b c /);
  my ($head, $rest) = $array->head;
```

## DESCRIPTION

These are immutable array objects; attempting to call list-mutating methods (or modify the backing array directly) will throw an exception.

This class consumes the following roles, which contain most of the relevant documentation:

List::Objects::WithUtils::Role::Array

List::Objects::WithUtils::Role::Array::WithJunctions

List::Objects::WithUtils::Role::Array::Immutable

(See List::Objects::WithUtils::Array for a mutable implementation.)

### immarray

Creates a new immutable array object.

## AUTHOR

Jon Portnoy \<avenj@cobaltirc.org\>

Licensed under the same terms as Perl.
