NAME

ExtUtils::Builder::ParseXS - Essential functions for implementing XS in a Plan

VERSION

version 0.016

SYNOPSIS

$planner->load_module("ExtUtils::Builder::ParseXS");
$planner->parse_xs("foo.xs", "foo.c");

DESCRIPTION

This module implements several helper methods used in implementing XS.

It takes one optional argument config, which should be an ExtUtils::Config compatible object. If your $planner has a config delegate, that will be used as default value.

DELEGATES

parse_xs($source, $destination, %options)

This will parse the XS file $source and write the resulting C file to $destination.

  • mkdir

    If set this will mkdir the base of the target before running the parse.

  • dependencies

    This lists additional dependencies that will be added to the target.

  • typemap

    The name of the typemap file. Defaults to typemap if that file exists.

  • hiertype

    Allow hierarchical types (with double colons) such as used in C++.

c_file_for_xs($filename, $dir = dirname($filename))

This returns the path to the C file for a certain XS file.

module_for_xs($filename)

This returns the module corresponding to a specific XS files.

extension_filename($module_name)

This will return the path for the loadable object of an extension for $module.

AUTHOR

Leon Timmermans <fawaka@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Leon Timmermans.

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