GIF89; GIF89; %PDF- %PDF-
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
=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
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| CBuilder | Folder | 0755 |
|
|
| Command | Folder | 0755 |
|
|
| Constant | Folder | 0755 |
|
|
| Liblist | Folder | 0755 |
|
|
| MakeMaker | Folder | 0755 |
|
|
| ParseXS | Folder | 0755 |
|
|
| Typemaps | Folder | 0755 |
|
|
| CBuilder.pm | File | 8.67 KB | 0644 |
|
| Command.pm | File | 7.63 KB | 0644 |
|
| Constant.pm | File | 14.7 KB | 0644 |
|
| Embed.pm | File | 12.57 KB | 0644 |
|
| Install.pm | File | 39.92 KB | 0644 |
|
| Installed.pm | File | 14 KB | 0644 |
|
| Liblist.pm | File | 9.29 KB | 0644 |
|
| MANIFEST.SKIP | File | 1.17 KB | 0644 |
|
| MM.pm | File | 2.13 KB | 0644 |
|
| MM_AIX.pm | File | 1.46 KB | 0644 |
|
| MM_Any.pm | File | 80.97 KB | 0644 |
|
| MM_BeOS.pm | File | 1.04 KB | 0644 |
|
| MM_Cygwin.pm | File | 4.03 KB | 0644 |
|
| MM_DOS.pm | File | 1.04 KB | 0644 |
|
| MM_Darwin.pm | File | 1.45 KB | 0644 |
|
| MM_MacOS.pm | File | 901 B | 0644 |
|
| MM_NW5.pm | File | 5.35 KB | 0644 |
|
| MM_OS2.pm | File | 3.15 KB | 0644 |
|
| MM_OS390.pm | File | 2.22 KB | 0644 |
|
| MM_QNX.pm | File | 907 B | 0644 |
|
| MM_UWIN.pm | File | 994 B | 0644 |
|
| MM_Unix.pm | File | 111.19 KB | 0644 |
|
| MM_VMS.pm | File | 66.68 KB | 0644 |
|
| MM_VOS.pm | File | 762 B | 0644 |
|
| MM_Win32.pm | File | 14.71 KB | 0644 |
|
| MM_Win95.pm | File | 1.26 KB | 0644 |
|
| MY.pm | File | 676 B | 0644 |
|
| MakeMaker.pm | File | 106.93 KB | 0644 |
|
| Manifest.pm | File | 22.94 KB | 0644 |
|
| Miniperl.pm | File | 6.48 KB | 0644 |
|
| Mkbootstrap.pm | File | 3.2 KB | 0644 |
|
| Mksymlists.pm | File | 10.75 KB | 0644 |
|
| PL2Bat.pm | File | 5.1 KB | 0644 |
|
| Packlist.pm | File | 8.34 KB | 0644 |
|
| ParseXS.pm | File | 65.36 KB | 0644 |
|
| ParseXS.pod | File | 4.3 KB | 0644 |
|
| Typemaps.pm | File | 26.26 KB | 0644 |
|
| testlib.pm | File | 911 B | 0644 |
|
| typemap | File | 11.05 KB | 0644 |
|
| xsubpp | File | 4.95 KB | 0644 |
|