=head1 NAME ExtUtils::Typemaps::OutputMap - Entry in the OUTPUT section of a typemap =head1 SYNOPSIS use ExtUtils::Typemaps; ... my $output = $typemap->get_output_map('T_NV'); my $code = $output->code(); $output->code("..."); =head1 DESCRIPTION Refer to L for details. =head1 METHODS =cut =head2 new Requires C and C parameters. =cut =head2 code Returns or sets the OUTPUT mapping code for this entry. =cut =head2 xstype Returns the name of the XS type of the OUTPUT map. =cut =head2 cleaned_code Returns a cleaned-up copy of the code to which certain transformations have been applied to make it more ANSI compliant. =cut =head2 targetable This is an obscure optimization that used to live in C directly. In a nutshell, this will check whether the output code involves calling C, C, C, C or C to set the special C<$arg> placeholder to a new value B. If that is the case, the code is eligible for using the C-related macros to optimize this. Thus the name of the method: C. If the optimization can not be applied, this returns undef. If it can be applied, this method returns a hash reference containing the following information: type: Any of the characters i, u, n, p with_size: Bool indicating whether this is the sv_setpvn variant what: The code that actually evaluates to the output scalar what_size: If "with_size", this has the string length (as code, not constant) =cut =head1 SEE ALSO L =head1 AUTHOR Steffen Mueller C<> =head1 COPYRIGHT & LICENSE Copyright 2009, 2010, 2011, 2012 Steffen Mueller This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut