SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

 
 

perl-Inline-Files rpm build for : OpenSuSE. For other distributions click perl-Inline-Files.

Name : perl-Inline-Files
Version : 0.71 Vendor : obs://build_opensuse_org/devel:languages:perl
Release : lp155.1.1 Date : 2023-07-20 16:53:01
Group : Development/Libraries/Perl Source RPM : perl-Inline-Files-0.71-lp155.1.1.src.rpm
Size : 0.04 MB
Packager : https://www_suse_com/
Summary : Multiple virtual files at the end of your code
Description :
Inline::Files generalizes the notion of the \'__DATA__\' marker and the
associated \'< DATA>\' filehandle, to an arbitrary number of markers and
associated filehandles.

When you add the line:

use Inline::Files;

to a source file you can then specify an arbitrary number of distinct
virtual files at the end of the code. Each such virtual file is marked by a
line of the form:

__SOME_SYMBOL_NAME_IN_UPPER_CASE__

The following text -- up to the next such marker -- is treated as a file,
whose (pseudo-)name is available as an element of the package array
\'AATTSOME_SYMBOL_NAME_IN_UPPER_CASE\'. The name of the first virtual file with
this marker is also available as the package scalar
\'$SOME_SYMBOL_NAME_IN_UPPER_CASE\'.

The filehandle of the same name is magical -- just like \'ARGV\' -- in that
it automatically opens itself when first read. Furthermore -- just like
\'ARGV\' -- the filehandle re-opens itself to the next appropriate virtual
file (by \'shift\'-ing the first element of \'AATTSOME_SYMBOL_NAME_IN_UPPER_CASE\'
into \'$SOME_SYMBOL_NAME_IN_UPPER_CASE\') whenever it reaches EOF.

So, just as with \'ARGV\', you can treat all the virtual files associated
with a single symbol either as a single, multi-part file:

use Inline::Files;

while (< FILE>) {
print \"$FILE: $_\";
}

__FILE__
File 1
here

__FILE__
File 2
here

__OTHER_FILE__
Other file 1

__FILE__
File 3
here

or as a series of individual files:

use Inline::Files;

foreach $filename (AATTFILE) {
open HANDLE, $filename;
print \"< < $filename>>\
\";
while (< HANDLE>) {
print;
}
}

__FILE__
File 1
here

__FILE__
File 2
here

__OTHER_FILE__
Other file 1

__FILE__
File 3
here

Note that these two examples completely ignore the lines:

__OTHER_FILE__
Other file 1

which would be accessed via the \'OTHER_FILE\' filehandle.

Unlike \'< ARGV>\'/\'AATTARGV\'/\'$ARGV\', Inline::Files also makes use of the hash
associated with an inline file\'s symbol. That is, when you create an inline
file with a marker \'__WHATEVER__\', the hash \'%WHATEVER\' will contain
information about that file. That information is:

* \'$WHATEVER{file}\'

The name of the disk file in which the inlined \'__WHATEVER__\' files were
defined;

* \'$WHATEVER{line}\'

The line (starting from 1) at which the current inline \'__WHATEVER__\' file
being accessed by \'< WHATEVER>\' started.

* \'$WHATEVER{offset}\'

The byte offset (starting from 0) at which the current inline
\'__WHATEVER__\' file being accessed by \'< WHATEVER>\' started.

* \'$WHATEVER{writable}\'

Whether the the current inline file being accessed by \'< WHATEVER>\' is
opened for output.

The hash and its elements are read-only and the entry values are only
meaningful when the corresponding filehandle is open.

RPM found in directory: /packages/linux-pbone/ftp5.gwdg.de/pub/opensuse/repositories/devel:/languages:/perl:/CPAN-I/15.5/noarch

Content of RPM  Provides Requires

Download
ftp.icm.edu.pl  perl-Inline-Files-0.71-lp155.1.1.noarch.rpm
     

Provides :
perl(Inline::Files)
perl(Inline::Files::Data)
perl(Inline::Files::Virtual)
perl-Inline-Files

Requires :
perl(:MODULE_COMPAT_5.26.1)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1


Content of RPM :
/usr/lib/perl5/vendor_perl/5.26.1/Inline
/usr/lib/perl5/vendor_perl/5.26.1/Inline/Files
/usr/lib/perl5/vendor_perl/5.26.1/Inline/Files.pm
/usr/lib/perl5/vendor_perl/5.26.1/Inline/Files/Virtual.pm
/usr/lib/perl5/vendor_perl/5.26.1/x86_64-linux-thread-multi
/usr/share/doc/packages/perl-Inline-Files
/usr/share/doc/packages/perl-Inline-Files/Changes
/usr/share/doc/packages/perl-Inline-Files/README
/usr/share/man/man3/Inline::Files.3pm.gz
/usr/share/man/man3/Inline::Files::Virtual.3pm.gz

 
ICM