# man > ExtUtils::Typemaps::Cmd

## NAME
    [ExtUtils::Typemaps::Cmd](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps%3A%3ACmd/markdown) - Quick commands for handling typemaps

## SYNOPSIS
    From XS:

      INCLUDE_COMMAND: $^X -[MExtUtils::Typemaps::Cmd](https://www.chedong.com/phpMan.php/perldoc/MExtUtils%3A%3ATypemaps%3A%3ACmd/markdown) \
                       -e "print embeddable_typemap(q{Excommunicated})"

    Loads "[ExtUtils::Typemaps::Excommunicated](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps%3A%3AExcommunicated/markdown)", 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](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps/markdown) 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](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps/markdown)" subclass.

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

      print embeddable_typemap(
        "Excommunicated", "[ExtUtils::Typemaps::Basic](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps%3A%3ABasic/markdown)", "./typemap"
      );

    This will try to load a module "[ExtUtils::Typemaps::Excommunicated](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps%3A%3AExcommunicated/markdown)" and use it as an
    "[ExtUtils::Typemaps](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps/markdown)" 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.

## SEE ALSO
    [ExtUtils::Typemaps](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ATypemaps/markdown)

    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.

