The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

List::Objects::WithUtils::Role::Array::Immutable - Immutable array behavior

SYNOPSIS

  # Via List::Objects::WithUtils::Array::Immutable ->
  use List::Objects::WithUtils 'immarray';
  my $array = immarray(qw/ a b c /);
  $array->push('d');  # dies

DESCRIPTION

This role adds immutable behavior to List::Objects::WithUtils::Role::Array consumers.

The following methods are not available and will throw an exception:

  clear
  set
  pop push
  shift unshift
  delete delete_when
  insert
  rotate_in_place
  splice

(The backing array is also marked read-only.)

See List::Objects::WithUtils::Array::Immutable for a consumer implementation that also pulls in List::Objects::WithUtils::Role::Array & List::Objects::WithUtils::Role::Array::WithJunctions.

AUTHOR

Jon Portnoy <avenj@cobaltirc.org>

Licensed under the same terms as Perl.