Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

ExtUtils::Typemaps::Cmd (3)

Name

ExtUtils::Typemaps::Cmd - Quick commands for handling typemaps

Synopsis

From XS:

INCLUDE_COMMAND: $^X -MExtUtils::Typemaps::Cmd \
-e "print embeddable_typemap(q{Excommunicated})"

Loads "ExtUtils::Typemaps::Excommunicated", instantiates an object, and
dumps it as an embeddable typemap for use directly in your XS file.

Description

Perl Programmers Reference Guide
                                                    ExtUtils::Typemaps::Cmd(3)



NAME
       ExtUtils::Typemaps::Cmd - Quick commands for handling typemaps

SYNOPSIS
       From XS:

         INCLUDE_COMMAND: $^X -MExtUtils::Typemaps::Cmd \
                          -e "print embeddable_typemap(q{Excommunicated})"

       Loads "ExtUtils::Typemaps::Excommunicated", instantiates an object, and
       dumps it as an embeddable typemap for use directly in your XS file.

DESCRIPTION
       This is a helper module for ExtUtils::Typemaps for quick one-liners,
       specifically for inclusion of shared typemaps that live on CPAN into an
       XS file (see SYNOPSIS).

       For this reason, the following functions are exported by default:

EXPORTED FUNCTIONS
   embeddable_typemap
       Given a list of identifiers, "embeddable_typemap" tries to load
       typemaps from a file of the given name(s), or from a module that is an
       "ExtUtils::Typemaps" subclass.

       Returns a string representation of the merged typemaps that can be
       included verbatim into XS. Example:

         print embeddable_typemap(
           "Excommunicated", "ExtUtils::Typemaps::Basic", "./typemap"
         );

       This will try to load a module "ExtUtils::Typemaps::Excommunicated" and
       use it as an "ExtUtils::Typemaps" subclass. If that fails, it'll try
       loading "Excommunicated" as a module, if that fails, it'll try to read
       a file called Excommunicated. It'll work similarly for the second
       argument, but the third will be loaded as a file first.

       After loading all typemap files or modules, it will merge them in the
       specified order and dump the result as an embeddable typemap.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | runtime/perl-532      |
       +---------------+-----------------------+
       |Stability      | Pass-through volatile |
       +---------------+-----------------------+

SEE ALSO
       ExtUtils::Typemaps

       perlxs

AUTHOR
       Steffen Mueller "<smueller@cpan.org">

COPYRIGHT & LICENSE
       Copyright 2012 Steffen Mueller

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



NOTES
       Source code for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at
       https://github.com/oracle/solaris-userland.  The original community
       source was downloaded from
       http://www.cpan.org/src/5.0/perl-5.32.0.tar.gz.

       Further information about this software can be found on the open source
       community website at https://www.perl.org/.



perl v5.32.0                      2020-06-14
                                                    ExtUtils::Typemaps::Cmd(3)