#
# This file was automatically generated.  Do not edit.
#

TYPEMAP

cairo_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_surface_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_face_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_pattern_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_scaled_font_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_options_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_matrix_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_content_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_line_cap_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_antialias_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_path_data_type_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_format_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_type_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_hint_style_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_pattern_type_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_weight_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_extend_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_ps_level_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_fill_rule_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_slant_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_hint_metrics_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_status_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_filter_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_operator_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_subpixel_order_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_line_join_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_surface_type_t	T_CAIROPERL_GENERIC_WRAPPER
cairo_svg_version_t	T_CAIROPERL_GENERIC_WRAPPER
const cairo_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_surface_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_surface_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_surface_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_font_face_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_face_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_font_face_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_pattern_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_pattern_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_pattern_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_scaled_font_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_scaled_font_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_scaled_font_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_font_options_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_options_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_font_options_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_matrix_t *	T_CAIROPERL_GENERIC_WRAPPER
cairo_matrix_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
const cairo_matrix_t_ornull *	T_CAIROPERL_GENERIC_WRAPPER
cairo_t_noinc *	T_CAIROPERL_GENERIC_WRAPPER
cairo_surface_t_noinc *	T_CAIROPERL_GENERIC_WRAPPER
cairo_font_face_t_noinc *	T_CAIROPERL_GENERIC_WRAPPER
cairo_pattern_t_noinc *	T_CAIROPERL_GENERIC_WRAPPER
cairo_scaled_font_t_noinc *	T_CAIROPERL_GENERIC_WRAPPER

INPUT

T_CAIROPERL_GENERIC_WRAPPER
	$var = Sv${;
	  (my $ntype = $type) =~ s/(?:const\s+)?([:\w]+)(?:\s*\*)$/$1/x;
	  my $result = $type;
	  if ($ntype =~ m/(.+)_t(_.+)?/) {
	    my ($name, $options) = ($1, $2);
	    $name =~ s/([^_]+)/ucfirst $1/ge;
	    $name =~ s/_//g;
	    $result = $name . $options;
	  }
	  \$result} ($arg);

OUTPUT

T_CAIROPERL_GENERIC_WRAPPER
	$arg = newSV${;
	  (my $ntype = $type) =~ s/(?:const\s+)?([:\w]+)(?:\s*\*)$/$1/x;
	  my $result = $type;
	  if ($ntype =~ m/(.+)_t(_.+)?/) {
	    my ($name, $options) = ($1, $2);
	    $name =~ s/([^_]+)/ucfirst $1/ge;
	    $name =~ s/_//g;
	    $result = $name . $options;
	  }
	  \$result} ($var);
