1N/Apackage XS::Typemap;
1N/A
1N/A=head1 NAME
1N/A
1N/AXS::Typemap - module to test the XS typemaps distributed with perl
1N/A
1N/A=head1 SYNOPSIS
1N/A
1N/A use XS::Typemap;
1N/A
1N/A $output = T_IV( $input );
1N/A $output = T_PV( $input );
1N/A @output = T_ARRAY( @input );
1N/A
1N/A=head1 DESCRIPTION
1N/A
1N/AThis module is used to test that the XS typemaps distributed
1N/Awith perl are working as advertised. A function is available
1N/Afor each typemap definition (eventually). In general each function
1N/Atakes a variable, processes it through the OUTPUT typemap and then
1N/Areturns it using the INPUT typemap.
1N/A
1N/AA test script can then compare the input and output to make sure they
1N/Aare the expected values. When only an input or output function is
1N/Aprovided the function will be named after the typemap entry and have
1N/Aeither '_IN' or '_OUT' appended.
1N/A
1N/AAll the functions are exported. There is no reason not to do this since
1N/Athe entire purpose is for testing Perl. Namespace pollution will be limited
1N/Ato the test script.
1N/A
1N/A=cut
1N/A
1N/Ause base qw/ DynaLoader Exporter /;
1N/A
1N/A
1N/Ause vars qw/ $VERSION @EXPORT /;
1N/A
1N/A$VERSION = '0.01';
1N/A
1N/A@EXPORT = (qw/
1N/A T_SV
1N/A T_SVREF
1N/A T_AVREF
1N/A T_HVREF
1N/A T_CVREF
1N/A T_SYSRET_fail T_SYSRET_pass
1N/A T_UV
1N/A T_IV
1N/A T_INT
1N/A T_ENUM
1N/A T_BOOL
1N/A T_U_INT
1N/A T_SHORT
1N/A T_U_SHORT
1N/A T_LONG
1N/A T_U_LONG
1N/A T_CHAR
1N/A T_U_CHAR
1N/A T_FLOAT
1N/A T_NV
1N/A T_DOUBLE
1N/A T_PV
1N/A T_PTR_IN T_PTR_OUT
1N/A T_PTRREF_IN T_PTRREF_OUT
1N/A T_REF_IV_REF
1N/A T_REF_IV_PTR_IN T_REF_IV_PTR_OUT
1N/A T_PTROBJ_IN T_PTROBJ_OUT
1N/A T_OPAQUE_IN T_OPAQUE_OUT T_OPAQUE_array
1N/A T_OPAQUEPTR_IN T_OPAQUEPTR_OUT T_OPAQUEPTR_OUT_short
1N/A T_OPAQUEPTR_IN_struct T_OPAQUEPTR_OUT_struct
1N/A T_ARRAY
1N/A T_STDIO_open T_STDIO_close T_STDIO_print
1N/A /);
1N/A
1N/A
1N/Abootstrap XS::Typemap;
1N/A
1N/A=head1 NOTES
1N/A
1N/AThis module is for testing only and should not normally be installed.
1N/A
1N/A=head1 AUTHOR
1N/A
1N/ATim Jenness E<lt>t.jenness@jach.hawaii.eduE<gt>
1N/A
1N/ACopyright (C) 2001 Tim Jenness All Rights Reserved. This program is
1N/Afree software; you can redistribute it and/or modify it under the same
1N/Aterms as Perl itself.
1N/A
1N/A=cut
1N/A
1N/A
1N/A1;
1N/A