logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

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

Author

Steffen Mueller "<smueller@cpan.org">

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.

Name

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

See Also

ExtUtils::Typemaps perlxs

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.

See Also