This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Merge branch 'vincent/rvalue_stmt_given' into blead
[perl5.git] / ext / PerlIO-scalar / scalar.pm
1 package PerlIO::scalar;
2 our $VERSION = '0.08';
3 use XSLoader ();
4 XSLoader::load 'PerlIO::scalar';
5 1;
6 __END__
7
8 =head1 NAME
9
10 PerlIO::scalar - in-memory IO, scalar IO
11
12 =head1 SYNOPSIS
13
14    my $scalar = '';
15    ...
16    open my $fh, "<",  \$scalar or die;
17    open my $fh, ">",  \$scalar or die;
18    open my $fh, ">>", \$scalar or die;
19
20 or
21
22    my $scalar = '';
23    ...
24    open my $fh, "<:scalar",  \$scalar or die;
25    open my $fh, ">:scalar",  \$scalar or die;
26    open my $fh, ">>:scalar", \$scalar or die;
27
28 =head1 DESCRIPTION
29
30 A filehandle is opened but the file operations are performed "in-memory"
31 on a scalar variable.  All the normal file operations can be performed
32 on the handle. The scalar is considered a stream of bytes.  Currently
33 fileno($fh) returns -1.
34
35 =head1 IMPLEMENTATION NOTE
36
37 C<PerlIO::scalar> only exists to use XSLoader to load C code that
38 provides support for treating a scalar as an "in memory" file.
39 One does not need to explicitly C<use PerlIO::scalar>.
40
41 =cut