NAME

Statistics::R::IO::ParserState - Current state of the IO parser

VERSION

version 1.0002

SYNOPSIS

use Statistics::R::IO::ParserState;

my $state = Statistics::R::IO::ParserState->new(
    data => 'file.rds'
);
say $state->at
say $state->next->at;

DESCRIPTION

You shouldn't create instances of this class, it exists mainly to handle deserialization of R data files by the IO classes.

METHODS

ACCESSORS

data

An array reference to the data being parsed. The constructs accepts a scalar, which will be split into individual characters.

position

Position of the next data element to be processed.

at

Returns the element (byte) at the current position.

eof

Returns true if the cursor (position) is at the end of the data.

singletons

An array reference in which unserialized data that should be exists as singletons can be "stashed" by the parser for later reference.

get_singleton $id

Return the singleton data object with the given $id.

MUTATORS

ParserState is intended to be immutable, so the "mutator" methods actually return a new instance with appropriately modified values of the attributes.

next

Returns a new ParserState instance with position advanced by one.

add_singleton $singleton

Returns a new ParserState instance with $singleton argument appended to the instance's singletons.

BUGS AND LIMITATIONS

Instances of this class 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