SILENT KILLERPanel

Current Path: > > usr > > share > perl5 > vendor_perl > > ExtUtils


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //usr//share/perl5/vendor_perl//ExtUtils

NameTypeSizeLast ModifiedActions
CBuilder Directory - -
Command Directory - -
Liblist Directory - -
MM Directory - -
MakeMaker Directory - -
ParseXS Directory - -
Typemaps Directory - -
CBuilder.pm File 8880 bytes November 22 2017 16:20:35.
Command.pm File 7802 bytes March 19 2018 10:21:53.
Install.pm File 41020 bytes May 28 2017 10:51:53.
Installed.pm File 14363 bytes May 28 2017 10:51:43.
Liblist.pm File 9743 bytes October 13 2019 08:55:21.
MANIFEST.SKIP File 971 bytes December 31 2014 19:02:48.
MM.pm File 2138 bytes March 19 2018 10:21:54.
MM_AIX.pm File 1403 bytes March 19 2018 10:21:54.
MM_Any.pm File 82753 bytes March 19 2018 10:21:54.
MM_BeOS.pm File 1044 bytes March 19 2018 10:21:54.
MM_Cygwin.pm File 4085 bytes March 19 2018 10:21:54.
MM_DOS.pm File 1052 bytes March 19 2018 10:21:53.
MM_Darwin.pm File 936 bytes March 19 2018 10:21:54.
MM_MacOS.pm File 892 bytes March 19 2018 10:21:54.
MM_NW5.pm File 5466 bytes March 19 2018 10:21:54.
MM_OS2.pm File 3217 bytes March 19 2018 10:21:54.
MM_QNX.pm File 894 bytes March 19 2018 10:21:54.
MM_UWIN.pm File 981 bytes March 19 2018 10:21:54.
MM_Unix.pm File 111071 bytes October 13 2019 08:55:21.
MM_VMS.pm File 68116 bytes March 19 2018 10:21:54.
MM_VOS.pm File 749 bytes March 19 2018 10:21:53.
MM_Win32.pm File 14402 bytes March 19 2018 10:21:54.
MM_Win95.pm File 1281 bytes March 19 2018 10:21:53.
MY.pm File 678 bytes March 19 2018 10:21:54.
MakeMaker.pm File 110530 bytes October 13 2019 08:55:21.
Manifest.pm File 23439 bytes December 31 2014 19:02:48.
Mkbootstrap.pm File 3306 bytes March 19 2018 10:21:53.
Mksymlists.pm File 11002 bytes March 19 2018 10:21:54.
Packlist.pm File 8565 bytes May 28 2017 10:51:43.
ParseXS.pm File 66572 bytes July 31 2017 15:46:04.
ParseXS.pod File 4406 bytes July 31 2017 15:46:04.
Typemaps.pm File 26795 bytes July 31 2017 15:46:04.
testlib.pm File 916 bytes March 19 2018 10:21:54.
xsubpp File 5080 bytes October 13 2019 08:58:35.

Reading File: //usr//share/perl5/vendor_perl//ExtUtils/ParseXS.pod

=head1 NAME

ExtUtils::ParseXS - converts Perl XS code into C code

=head1 SYNOPSIS

  use ExtUtils::ParseXS;

  my $pxs = ExtUtils::ParseXS->new;
  $pxs->process_file( filename => 'foo.xs' );

  $pxs->process_file( filename => 'foo.xs',
                      output => 'bar.c',
                      'C++' => 1,
                      typemap => 'path/to/typemap',
                      hiertype => 1,
                      except => 1,
                      versioncheck => 1,
                      linenumbers => 1,
                      optimize => 1,
                      prototypes => 1,
                    );

  # Legacy non-OO interface using a singleton:
  use ExtUtils::ParseXS qw(process_file);
  process_file( filename => 'foo.xs' );

=head1 DESCRIPTION

C<ExtUtils::ParseXS> will compile XS code into C code by embedding the constructs
necessary to let C functions manipulate Perl values and creates the glue
necessary to let Perl access those functions.  The compiler uses typemaps to
determine how to map C function parameters and variables to Perl values.

The compiler will search for typemap files called I<typemap>.  It will use
the following search path to find default typemaps, with the rightmost
typemap taking precedence.

    ../../../typemap:../../typemap:../typemap:typemap

=head1 EXPORT

None by default.  C<process_file()> and/or C<report_error_count()>
may be exported upon request. Using the functional interface is
discouraged.

=head1 METHODS

=over 4

=item $pxs->new()

Returns a new, empty XS parser/compiler object.

=item $pxs->process_file()

This method processes an XS file and sends output to a C file.
The method may be called as a function (this is the legacy
interface) and will then use a singleton as invocant.

Named parameters control how the processing is done.
The following parameters are accepted:

=over 4

=item B<C++>

Adds C<extern "C"> to the C code.  Default is false.

=item B<hiertype>

Retains C<::> in type names so that C++ hierarchical types can be
mapped.  Default is false.

=item B<except>

Adds exception handling stubs to the C code.  Default is false.

=item B<typemap>

Indicates that a user-supplied typemap should take precedence over the
default typemaps.  A single typemap may be specified as a string, or
multiple typemaps can be specified in an array reference, with the
last typemap having the highest precedence.

=item B<prototypes>

Generates prototype code for all xsubs.  Default is false.

=item B<versioncheck>

Makes sure at run time that the object file (derived from the C<.xs>
file) and the C<.pm> files have the same version number.  Default is
true.

=item B<linenumbers>

Adds C<#line> directives to the C output so error messages will look
like they came from the original XS file.  Default is true.

=item B<optimize>

Enables certain optimizations.  The only optimization that is currently
affected is the use of I<target>s by the output C code (see L<perlguts>).
Not optimizing may significantly slow down the generated code, but this is the way
B<xsubpp> of 5.005 and earlier operated.  Default is to optimize.

=item B<inout>

Enable recognition of C<IN>, C<OUT_LIST> and C<INOUT_LIST>
declarations.  Default is true.

=item B<argtypes>

Enable recognition of ANSI-like descriptions of function signature.
Default is true.

=item B<s>

I<Maintainer note:> I have no clue what this does.  Strips function prefixes?

=back

=item $pxs->report_error_count()

This method returns the number of [a certain kind of] errors
encountered during processing of the XS file.

The method may be called as a function (this is the legacy
interface) and will then use a singleton as invocant.

=back

=head1 AUTHOR

Based on xsubpp code, written by Larry Wall.

Maintained by:

=over 4

=item *

Ken Williams, <ken@mathforum.org>

=item *

David Golden, <dagolden@cpan.org>

=item *

James Keenan, <jkeenan@cpan.org>

=item *

Steffen Mueller, <smueller@cpan.org>

=back

=head1 COPYRIGHT

Copyright 2002-2014 by Ken Williams, David Golden and other contributors.  All
rights reserved.

This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.

Based on the C<ExtUtils::xsubpp> code by Larry Wall and the Perl 5
Porters, which was released under the same license terms.

=head1 SEE ALSO

L<perl>, ExtUtils::xsubpp, ExtUtils::MakeMaker, L<perlxs>, L<perlxstut>.

=cut



SILENT KILLER Tool