NAME
Statistics::R::REXP::List - an R generic vector (list)
VERSION
version 1.0002
SYNOPSIS
use Statistics::R::REXP::List
my $vec = Statistics::R::REXP::List->new([
1, '', 'foo', ['x', 22]
]);
print $vec->elements;
DESCRIPTION
An object of this class represents an R list, also called a generic vector (VECSXP
). List elements can themselves be lists, and so can form a tree structure.
METHODS
Statistics::R::REXP:List
inherits from Statistics::R::REXP::Vector, with no added restrictions on the value of its elements. Missing values (NA
in R) have value undef
.
- sexptype
-
SEXPTYPE of generic vectors is
VECSXP
. - to_pl
-
Perl value of the list is an array reference to the Perl values of its
elements
, but using a scalar value to represent elements that are atomic vectors of length 1, rather than a one-element array reference.The idea is that in R,
1:3
, andlist(1, 2, 3)
can often be used interchangeably, even though the list is really composed of three integer vectors, each of length one. Now, both will have native Perl representation of[1, 2, 3]
.This only applies to elements that are atomic vectors. An element of type list will always be represented as an array reference:
list(list(1), list(2), list(3))->to_pl
->[ [ 1 ], [ 2 ], [ 3 ] ]
BUGS AND LIMITATIONS
Classes in the REXP
hierarchy are intended to be immutable. Please do not try to change their value or attributes.
There are no known bugs in this module. Please see Statistics::R::IO for bug reporting.
SUPPORT
See Statistics::R::IO for support and contact information.
AUTHOR
Davor Cubranic <cubranic@stat.ubc.ca>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2017 by University of British Columbia.
This is free software, licensed under:
The GNU General Public License, Version 3, June 2007