Provided by: libstatistics-r-io-perl_1.0002-2_all bug

NAME

       Statistics::R::REXP::Closure - an R closure

VERSION

       version 1.0002

SYNOPSIS

           use Statistics::R::REXP::Closure

           my $clos = Statistics::R::REXP::Closure->new(body => {
               Statistics::R::REXP::Language->new([
                   Statistics::R::REXP::Symbol->new('mean'),
                   Statistics::R::REXP::Double->new([1, 2, 3])
           ])
           });
           print $env->elements;

DESCRIPTION

       An object of this class represents an R closure ("ENVSXP"). Closures in R are constructed
       with "function" and consist of a arguments(args) -- optionally with default values
       (defaults); a body; and an environment, a pointer to an enclosing evaluation frame when
       the closure is used.

       These objects represent calls (such as model formulae), with first element a reference to
       the function being called, and the remainder the actual arguments of the call. Names of
       arguments, if given, are recorded in the 'names' attribute (itself as
       Statistics::R::REXP::Character vector), with unnamed arguments having name ''. If no
       arguments were named, the environment objects will not have a defined 'names' attribute.

       You shouldn't create instances of this class, it exists mainly to handle deserialization
       of "ENVSXP"s by the "IO" classes.

METHODS

       "Statistics::R::REXP:Environment" inherits from Statistics::R::REXP, with the added
       restriction that its first element has to be a Statistics::R::REXP::Symbol or another
       "Environment" instance. Trying to create a Closure instance that doesn't follow this
       restriction will raise an exception.

   ACCESSORS
       args
           An reference to the array of argument names.

       defaults
           Returns an array reference to default values of corresponding arguments, or "undef"s
           if the argument does not have a default. (If none of the arguments have defaults, this
           can be an empty array.

       body
           Returns the Statistics::R::REXP representing the body of the function.

       environment
           Returns a reference to the enclosing evaluation frame, i.e., the environment within
           which the function is defined and looks up any free variables. This attribute is
           optional because some serialization mechanisms (notably Rserve's QAP), do not save the
           closure's environment.

       sexptype
           SEXPTYPE of closures is "CLOSSXP".

       to_pl
           Closures do not have a native Perl representation and trying to call this access will
           raise an exception.

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