-
-
28 Jun 2022 16:41:23 UTC
- Distribution: XS-Framework
- Module version: 1.5.4
- Source (raw)
- Pod Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues (0)
- Testers (154 / 17 / 13)
- Kwalitee
Bus factor: 3- License: unknown
- Perl: v5.22.0
- Activity
24 month- Tools
- Download (174.1KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
- Dependencies
- XS::Install
- XS::libpanda
- next::XS
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
XS::Framework - Framework for building C++ XS modules with shared code, typemaps and C++ perl API.
DESCRIPTION
To high-level overview please read Shared XS modules manifesto.
XS::Framework consists of two major parts. First part, the C++ perl API makes it convenient to write C++ code, which iterates with perl. For example, it invokes SvREFCNT_dec in destructor upon perl variable (Sv) destruction; another example is safe type casting and perl functions calls.
The second part is C++ typemaps mechanism; it serves as alternative to standard perl typemaps and is shipped with pre-made storage and lifetime policies, make it possible to write C++ XS code with zero overhead or easily adapt third-party C++ libraries into perl.
The XS::Framework assumes somewhat familiarity with common perl XS-code; please refer perlxstut and perlapi. The shipped manuals consists of XS typemap cookbook XS::Framework::Manual::Cookbook, which has a variety of recipes from basic to advanced cases; and separate XS::Framework::Manual::Typemap and XS::Framework::Manual::SVAPI references.
AUTHOR
Pronin Oleg <syber@crazypanda.ru>, Crazy Panda LTD
LICENSE
You may distribute this code under the same terms as Perl itself.
Module Install Instructions
To install XS::Framework, copy and paste the appropriate command in to your terminal.
cpanm XS::Framework
perl -MCPAN -e shell install XS::Framework
For more information on module installation, please visit the detailed CPAN module installation guide.