summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mageia.org>2011-09-20 19:21:08 +0000
committerThierry Vignaud <tv@mageia.org>2011-09-20 19:21:08 +0000
commit44e4cdea73e198d9080f458fe262e504e75af87c (patch)
tree61c8e8fa181efe2d7ded92217d17ad4399f921a0
parent3d89ba204f79e662b8ff8c9dfce2775c5133a419 (diff)
downloadperl_checker-44e4cdea73e198d9080f458fe262e504e75af87c.tar
perl_checker-44e4cdea73e198d9080f458fe262e504e75af87c.tar.gz
perl_checker-44e4cdea73e198d9080f458fe262e504e75af87c.tar.bz2
perl_checker-44e4cdea73e198d9080f458fe262e504e75af87c.tar.xz
perl_checker-44e4cdea73e198d9080f458fe262e504e75af87c.zip
add Cairo & Pango
-rw-r--r--fake_packages/Cairo.pm344
-rw-r--r--fake_packages/Pango.pm452
2 files changed, 796 insertions, 0 deletions
diff --git a/fake_packages/Cairo.pm b/fake_packages/Cairo.pm
new file mode 100644
index 0000000..66b79be
--- /dev/null
+++ b/fake_packages/Cairo.pm
@@ -0,0 +1,344 @@
+
+package Cairo;
+our @ISA = qw();
+sub HAS_FT_FONT() {}
+sub HAS_PDF_SURFACE() {}
+sub HAS_PNG_FUNCTIONS() {}
+sub HAS_PS_SURFACE() {}
+sub HAS_RECORDING_SURFACE() {}
+sub HAS_SVG_SURFACE() {}
+sub VERSION { my ($_o_class) = @_ }
+sub VERSION_ENCODE { my (@_more_paras) = @_ }
+sub version { my ($_o_class) = @_ }
+sub version_string { my ($_o_class) = @_ }
+
+package Cairo::Context;
+our @ISA = qw();
+sub DESTROY { my ($_cr) = @_ }
+sub append_path { my ($_cr, $_path) = @_ }
+sub arc { my ($_cr, $_xc, $_yc, $_radius, $_angle1, $_angle2) = @_ }
+sub arc_negative { my ($_cr, $_xc, $_yc, $_radius, $_angle1, $_angle2) = @_ }
+sub clip { my ($_cr) = @_ }
+sub clip_extents { my ($_cr) = @_ }
+sub clip_preserve { my ($_cr) = @_ }
+sub close_path { my ($_cr) = @_ }
+sub copy_clip_rectangle_list { my ($_cr) = @_ }
+sub copy_page { my ($_cr) = @_ }
+sub copy_path { my ($_cr) = @_ }
+sub copy_path_flat { my ($_cr) = @_ }
+sub create { my ($_class, $_target) = @_ }
+sub curve_to { my ($_cr, $_x1, $_y1, $_x2, $_y2, $_x3, $_y3) = @_ }
+sub device_to_user { my ($_cr) = @_ }
+sub device_to_user_distance { my ($_cr) = @_ }
+sub fill { my ($_cr) = @_ }
+sub fill_extents { my ($_cr) = @_ }
+sub fill_preserve { my ($_cr) = @_ }
+sub font_extents { my ($_cr) = @_ }
+sub get_antialias { my ($_cr) = @_ }
+sub get_current_point { my ($_cr) = @_ }
+sub get_dash { my ($_cr) = @_ }
+sub get_fill_rule { my ($_cr) = @_ }
+sub get_font_face { my ($_cr) = @_ }
+sub get_font_matrix { my ($_cr) = @_ }
+sub get_font_options { my ($_cr) = @_ }
+sub get_group_target { my ($_cr) = @_ }
+sub get_line_cap { my ($_cr) = @_ }
+sub get_line_join { my ($_cr) = @_ }
+sub get_line_width { my ($_cr) = @_ }
+sub get_matrix { my ($_cr) = @_ }
+sub get_miter_limit { my ($_cr) = @_ }
+sub get_operator { my ($_cr) = @_ }
+sub get_scaled_font { my ($_cr) = @_ }
+sub get_source { my ($_cr) = @_ }
+sub get_target { my ($_cr) = @_ }
+sub get_tolerance { my ($_cr) = @_ }
+sub glyph_extents { my ($_cr, @_more_paras) = @_ }
+sub glyph_path { my ($_cr, @_more_paras) = @_ }
+sub has_current_point { my ($_cr) = @_ }
+sub identity_matrix { my ($_cr) = @_ }
+sub in_clip { my ($_cr, $_x, $_y) = @_ }
+sub in_fill { my ($_cr, $_x, $_y) = @_ }
+sub in_stroke { my ($_cr, $_x, $_y) = @_ }
+sub line_to { my ($_cr, $_x, $_y) = @_ }
+sub mask { my ($_cr, $_pattern) = @_ }
+sub mask_surface { my ($_cr, $_surface, $_surface_x, $_surface_y) = @_ }
+sub move_to { my ($_cr, $_x, $_y) = @_ }
+sub new_path { my ($_cr) = @_ }
+sub new_sub_path { my ($_cr) = @_ }
+sub paint { my ($_cr) = @_ }
+sub paint_with_alpha { my ($_cr, $_alpha) = @_ }
+sub path_extents { my ($_cr) = @_ }
+sub pop_group { my ($_cr) = @_ }
+sub pop_group_to_source { my ($_cr) = @_ }
+sub push_group { my ($_cr) = @_ }
+sub push_group_with_content { my ($_cr, $_content) = @_ }
+sub rectangle { my ($_cr, $_x, $_y, $_width, $_height) = @_ }
+sub rel_curve_to { my ($_cr, $_dx1, $_dy1, $_dx2, $_dy2, $_dx3, $_dy3) = @_ }
+sub rel_line_to { my ($_cr, $_dx, $_dy) = @_ }
+sub rel_move_to { my ($_cr, $_dx, $_dy) = @_ }
+sub reset_clip { my ($_cr) = @_ }
+sub restore { my ($_cr) = @_ }
+sub rotate { my ($_cr, $_angle) = @_ }
+sub save { my ($_cr) = @_ }
+sub scale { my ($_cr, $_sx, $_sy) = @_ }
+sub select_font_face { my ($_cr, $_family, $_slant, $_weight) = @_ }
+sub set_antialias { my ($_cr, $_antialias) = @_ }
+sub set_dash { my ($_cr, $_offset, @_more_paras) = @_ }
+sub set_fill_rule { my ($_cr, $_fill_rule) = @_ }
+sub set_font_face { my ($_cr, $_font_face) = @_ }
+sub set_font_matrix { my ($_cr, $_matrix) = @_ }
+sub set_font_options { my ($_cr, $_options) = @_ }
+sub set_font_size { my ($_cr, $_size) = @_ }
+sub set_line_cap { my ($_cr, $_line_cap) = @_ }
+sub set_line_join { my ($_cr, $_line_join) = @_ }
+sub set_line_width { my ($_cr, $_width) = @_ }
+sub set_matrix { my ($_cr, $_matrix) = @_ }
+sub set_miter_limit { my ($_cr, $_limit) = @_ }
+sub set_operator { my ($_cr, $_op) = @_ }
+sub set_scaled_font { my ($_cr, $_scaled_font) = @_ }
+sub set_source { my ($_cr, $_source) = @_ }
+sub set_source_rgb { my ($_cr, $_red, $_green, $_blue) = @_ }
+sub set_source_rgba { my ($_cr, $_red, $_green, $_blue, $_alpha) = @_ }
+sub set_source_surface { my ($_cr, $_surface, $_x, $_y) = @_ }
+sub set_tolerance { my ($_cr, $_tolerance) = @_ }
+sub show_glyphs { my ($_cr, @_more_paras) = @_ }
+sub show_page { my ($_cr) = @_ }
+sub show_text { my ($_cr, $_utf8) = @_ }
+sub show_text_glyphs { my ($_cr, $_utf8_sv, $_glyphs_sv, $_clusters_sv, $_cluster_flags) = @_ }
+sub status { my ($_cr) = @_ }
+sub stroke { my ($_cr) = @_ }
+sub stroke_extents { my ($_cr) = @_ }
+sub stroke_preserve { my ($_cr) = @_ }
+sub text_extents { my ($_cr, $_utf8) = @_ }
+sub text_path { my ($_cr, $_utf8) = @_ }
+sub transform { my ($_cr, $_matrix) = @_ }
+sub translate { my ($_cr, $_tx, $_ty) = @_ }
+sub user_to_device { my ($_cr) = @_ }
+sub user_to_device_distance { my ($_cr) = @_ }
+
+package Cairo::FontFace;
+our @ISA = qw();
+sub DESTROY { my ($_font) = @_ }
+sub get_type { my ($_font_face) = @_ }
+sub status { my ($_font) = @_ }
+
+package Cairo::FontOptions;
+our @ISA = qw();
+sub DESTROY { my ($_options) = @_ }
+sub create { my ($_class) = @_ }
+sub equal { my ($_options, $_other) = @_ }
+sub get_antialias { my ($_options) = @_ }
+sub get_hint_metrics { my ($_options) = @_ }
+sub get_hint_style { my ($_options) = @_ }
+sub get_subpixel_order { my ($_options) = @_ }
+sub merge { my ($_options, $_other) = @_ }
+sub set_antialias { my ($_options, $_antialias) = @_ }
+sub set_hint_metrics { my ($_options, $_hint_metrics) = @_ }
+sub set_hint_style { my ($_options, $_hint_style) = @_ }
+sub set_subpixel_order { my ($_options, $_subpixel_order) = @_ }
+sub status { my ($_options) = @_ }
+
+package Cairo::Format;
+our @ISA = qw();
+sub stride_for_width { my ($_format, $_width) = @_ }
+
+package Cairo::FtFontFace;
+our @ISA = qw();
+sub create { my ($_class, $_face, $_o_load_flags) = @_ }
+
+package Cairo::Gradient;
+our @ISA = qw();
+sub add_color_stop_rgb { my ($_pattern, $_offset, $_red, $_green, $_blue) = @_ }
+sub add_color_stop_rgba { my ($_pattern, $_offset, $_red, $_green, $_blue, $_alpha) = @_ }
+sub get_color_stops { my ($_pattern) = @_ }
+
+package Cairo::ImageSurface;
+our @ISA = qw();
+sub create { my ($_class, $_format, $_width, $_height) = @_ }
+sub create_for_data { my ($_class, $_data, $_format, $_width, $_height, $_stride) = @_ }
+sub create_from_png { my ($_class, $_filename) = @_ }
+sub create_from_png_stream { my ($_class, $_func, $_o_data) = @_ }
+sub get_data { my ($_surface) = @_ }
+sub get_format { my ($_surface) = @_ }
+sub get_height { my ($_surface) = @_ }
+sub get_stride { my ($_surface) = @_ }
+sub get_width { my ($_surface) = @_ }
+
+package Cairo::LinearGradient;
+our @ISA = qw();
+sub create { my ($_class, $_x0, $_y0, $_x1, $_y1) = @_ }
+sub get_points { my ($_pattern) = @_ }
+
+package Cairo::Matrix;
+our @ISA = qw();
+sub DESTROY { my ($_matrix) = @_ }
+sub init { my ($_class, $_xx, $_yx, $_xy, $_yy, $_x0, $_y0) = @_ }
+sub init_identity { my ($_class) = @_ }
+sub init_rotate { my ($_class, $_radians) = @_ }
+sub init_scale { my ($_class, $_sx, $_sy) = @_ }
+sub init_translate { my ($_class, $_tx, $_ty) = @_ }
+sub invert { my ($_matrix) = @_ }
+sub multiply { my ($_a, $_b) = @_ }
+sub rotate { my ($_matrix, $_radians) = @_ }
+sub scale { my ($_matrix, $_sx, $_sy) = @_ }
+sub transform_distance { my ($_matrix) = @_ }
+sub transform_point { my ($_matrix) = @_ }
+sub translate { my ($_matrix, $_tx, $_ty) = @_ }
+
+package Cairo::Path;
+our @ISA = qw();
+sub DESTROY { my ($_sv) = @_ }
+sub FETCH { my ($_path, $_index) = @_ }
+sub FETCHSIZE { my ($_path) = @_ }
+
+package Cairo::Path::Data;
+our @ISA = qw();
+sub EXISTS { my ($_sv, $_key) = @_ }
+sub FETCH { my ($_sv, $_key) = @_ }
+sub FIRSTKEY { my ($_sv) = @_ }
+sub NEXTKEY { my ($_sv, $_lastkey) = @_ }
+sub STORE { my ($_sv, $_key, $_value) = @_ }
+
+package Cairo::Path::Point;
+our @ISA = qw();
+sub FETCH { my ($_sv, $_index) = @_ }
+sub FETCHSIZE { my ($_sv) = @_ }
+sub STORE { my ($_sv, $_index, $_value) = @_ }
+
+package Cairo::Path::Points;
+our @ISA = qw();
+sub FETCH { my ($_sv, $_index) = @_ }
+sub FETCHSIZE { my ($_sv) = @_ }
+sub STORE { my ($_sv, $_index, $_value) = @_ }
+
+package Cairo::Pattern;
+our @ISA = qw();
+sub DESTROY { my ($_pattern) = @_ }
+sub get_extend { my ($_pattern) = @_ }
+sub get_filter { my ($_pattern) = @_ }
+sub get_matrix { my ($_pattern) = @_ }
+sub get_type { my ($_pattern) = @_ }
+sub set_extend { my ($_pattern, $_extend) = @_ }
+sub set_filter { my ($_pattern, $_filter) = @_ }
+sub set_matrix { my ($_pattern, $_matrix) = @_ }
+sub status { my ($_pattern) = @_ }
+
+package Cairo::PdfSurface;
+our @ISA = qw();
+sub create { my ($_class, $_filename, $_width_in_points, $_height_in_points) = @_ }
+sub create_for_stream { my ($_class, $_func, $_data, $_width_in_points, $_height_in_points) = @_ }
+sub get_versions { my ($_o_class) = @_ }
+sub restrict_to_version { my ($_surface, $_version) = @_ }
+sub set_size { my ($_surface, $_width_in_points, $_height_in_points) = @_ }
+sub version_to_string { my (@_more_paras) = @_ }
+
+package Cairo::PsSurface;
+our @ISA = qw();
+sub create { my ($_class, $_filename, $_width_in_points, $_height_in_points) = @_ }
+sub create_for_stream { my ($_class, $_func, $_data, $_width_in_points, $_height_in_points) = @_ }
+sub dsc_begin_page_setup { my ($_surface) = @_ }
+sub dsc_begin_setup { my ($_surface) = @_ }
+sub dsc_comment { my ($_surface, $_comment) = @_ }
+sub get_eps { my ($_surface) = @_ }
+sub get_levels { my ($_o_class) = @_ }
+sub level_to_string { my (@_more_paras) = @_ }
+sub restrict_to_level { my ($_surface, $_level) = @_ }
+sub set_eps { my ($_surface, $_eps) = @_ }
+sub set_size { my ($_surface, $_width_in_points, $_height_in_points) = @_ }
+
+package Cairo::RadialGradient;
+our @ISA = qw();
+sub create { my ($_class, $_cx0, $_cy0, $_radius0, $_cx1, $_cy1, $_radius1) = @_ }
+sub get_circles { my ($_pattern) = @_ }
+
+package Cairo::RecordingSurface;
+our @ISA = qw();
+sub create { my ($_class, $_content, $_extents) = @_ }
+sub ink_extents { my ($_surface) = @_ }
+
+package Cairo::Region;
+our @ISA = qw();
+sub DESTROY { my ($_region) = @_ }
+sub contains_point { my ($_region, $_x, $_y) = @_ }
+sub contains_rectangle { my ($_region, $_rectangle) = @_ }
+sub create { my ($_class, @_more_paras) = @_ }
+sub equal { my ($_a, $_b) = @_ }
+sub get_extents { my ($_region) = @_ }
+sub get_rectangle { my ($_region, $_nth) = @_ }
+sub intersect { my ($_dst, $_other) = @_ }
+sub intersect_rectangle { my ($_dst, $_rectangle) = @_ }
+sub is_empty { my ($_region) = @_ }
+sub num_rectangles { my ($_region) = @_ }
+sub status { my ($_region) = @_ }
+sub subtract { my ($_dst, $_other) = @_ }
+sub subtract_rectangle { my ($_dst, $_rectangle) = @_ }
+sub translate { my ($_region, $_dx, $_dy) = @_ }
+sub union { my ($_dst, $_other) = @_ }
+sub union_rectangle { my ($_dst, $_rectangle) = @_ }
+sub Cairo::Region::xor { my ($_dst, $_other) = @_ }
+sub xor_rectangle { my ($_dst, $_rectangle) = @_ }
+
+package Cairo::ScaledFont;
+our @ISA = qw();
+sub DESTROY { my ($_font) = @_ }
+sub create { my ($_class, $_font_face, $_font_matrix, $_ctm, $_options) = @_ }
+sub extents { my ($_scaled_font) = @_ }
+sub get_ctm { my ($_scaled_font) = @_ }
+sub get_font_face { my ($_scaled_font) = @_ }
+sub get_font_matrix { my ($_scaled_font) = @_ }
+sub get_font_options { my ($_scaled_font) = @_ }
+sub get_scale_matrix { my ($_scaled_font) = @_ }
+sub get_type { my ($_scaled_font) = @_ }
+sub glyph_extents { my ($_scaled_font, @_more_paras) = @_ }
+sub status { my ($_scaled_font) = @_ }
+sub text_extents { my ($_scaled_font, $_utf8) = @_ }
+sub text_to_glyphs { my ($_scaled_font, $_x, $_y, $_utf8_sv) = @_ }
+
+package Cairo::SolidPattern;
+our @ISA = qw();
+sub create_rgb { my ($_class, $_red, $_green, $_blue) = @_ }
+sub create_rgba { my ($_class, $_red, $_green, $_blue, $_alpha) = @_ }
+sub get_rgba { my ($_pattern) = @_ }
+
+package Cairo::Surface;
+our @ISA = qw();
+sub DESTROY { my ($_surface) = @_ }
+sub copy_page { my ($_surface) = @_ }
+sub create_for_rectangle { my ($_class, $_target, $_x, $_y, $_width, $_height) = @_ }
+sub create_similar { my (@_more_paras) = @_ }
+sub finish { my ($_surface) = @_ }
+sub flush { my ($_surface) = @_ }
+sub get_content { my ($_surface) = @_ }
+sub get_device_offset { my ($_surface) = @_ }
+sub get_fallback_resolution { my ($_surface) = @_ }
+sub get_font_options { my ($_surface) = @_ }
+sub get_type { my ($_surface) = @_ }
+sub has_show_text_glyphs { my ($_surface) = @_ }
+sub mark_dirty { my ($_surface) = @_ }
+sub mark_dirty_rectangle { my ($_surface, $_x, $_y, $_width, $_height) = @_ }
+sub set_device_offset { my ($_surface, $_x_offset, $_y_offset) = @_ }
+sub set_fallback_resolution { my ($_surface, $_x_pixels_per_inch, $_y_pixels_per_inch) = @_ }
+sub show_page { my ($_surface) = @_ }
+sub status { my ($_surface) = @_ }
+sub write_to_png { my ($_surface, $_filename) = @_ }
+sub write_to_png_stream { my ($_surface, $_func, $_o_data) = @_ }
+
+package Cairo::SurfacePattern;
+our @ISA = qw();
+sub create { my ($_class, $_surface) = @_ }
+sub get_surface { my ($_pattern) = @_ }
+
+package Cairo::SvgSurface;
+our @ISA = qw();
+sub create { my ($_class, $_filename, $_width_in_points, $_height_in_points) = @_ }
+sub create_for_stream { my ($_class, $_func, $_data, $_width_in_points, $_height_in_points) = @_ }
+sub get_versions { my ($_o_class) = @_ }
+sub restrict_to_version { my ($_surface, $_version) = @_ }
+sub version_to_string { my (@_more_paras) = @_ }
+
+package Cairo::ToyFontFace;
+our @ISA = qw();
+sub create { my ($_class, $_family, $_slant, $_weight) = @_ }
+sub get_family { my ($_font_face) = @_ }
+sub get_slant { my ($_font_face) = @_ }
+sub get_weight { my ($_font_face) = @_ }
diff --git a/fake_packages/Pango.pm b/fake_packages/Pango.pm
new file mode 100644
index 0000000..83837e8
--- /dev/null
+++ b/fake_packages/Pango.pm
@@ -0,0 +1,452 @@
+
+package Gnome2::Pango::Language;
+our @ISA = qw();
+sub matches { my ($_language, $_range_list) = @_ }
+
+package Pango;
+our @ISA = qw();
+sub CHECK_VERSION { my ($_class, $_major, $_minor, $_micro) = @_ }
+sub GET_VERSION_INFO { my ($_class) = @_ }
+sub PANGO_PIXELS { my ($_class, $_d) = @_ }
+sub extents_to_pixels { my ($_inclusive, $_nearest) = @_ }
+sub find_base_dir { my ($_class, $_text) = @_ }
+sub parse_markup { my ($_class, $_markup_text, $_markup_text, $_o_accel_marker) = @_ }
+sub pixels { my ($_class, $_d) = @_ }
+sub scale { my ($_class) = @_ }
+sub scale_large { my ($_class) = @_ }
+sub scale_medium { my ($_class) = @_ }
+sub scale_small { my ($_class) = @_ }
+sub scale_x_large { my ($_class) = @_ }
+sub scale_x_small { my ($_class) = @_ }
+sub scale_xx_large { my ($_class) = @_ }
+sub scale_xx_small { my ($_class) = @_ }
+sub units_from_double { my ($_d) = @_ }
+sub units_to_double { my ($_i) = @_ }
+
+package Pango::AttrBackground;
+our @ISA = qw();
+sub new { my ($_class, $_red, $_green, $_blue, @_more_paras) = @_ }
+
+package Pango::AttrColor;
+our @ISA = qw();
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrFallback;
+our @ISA = qw();
+sub new { my ($_class, $_enable_fallback, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrFamily;
+our @ISA = qw();
+sub new { my ($_class, $_family, @_more_paras) = @_ }
+
+package Pango::AttrFontDesc;
+our @ISA = qw();
+sub desc { my ($_attr, @_more_paras) = @_ }
+sub new { my ($_class, $_font_desc, @_more_paras) = @_ }
+
+package Pango::AttrForeground;
+our @ISA = qw();
+sub new { my ($_class, $_red, $_green, $_blue, @_more_paras) = @_ }
+
+package Pango::AttrGravity;
+our @ISA = qw();
+sub new { my ($_class, $_gravity, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrGravityHint;
+our @ISA = qw();
+sub new { my ($_class, $_hint, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrInt;
+our @ISA = qw();
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrIterator;
+our @ISA = qw();
+sub get { my ($_iterator, $_type) = @_ }
+sub get_attrs { my ($_iterator) = @_ }
+sub get_font { my ($_iterator) = @_ }
+sub next { my ($_iterator) = @_ }
+sub range { my ($_iterator) = @_ }
+
+package Pango::AttrLanguage;
+our @ISA = qw();
+sub new { my ($_class, $_language, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrLetterSpacing;
+our @ISA = qw();
+sub new { my ($_class, $_letter_spacing, @_more_paras) = @_ }
+
+package Pango::AttrList;
+our @ISA = qw();
+sub change { my ($_list, $_attr) = @_ }
+sub filter { my ($_list, $_func, $_o_data) = @_ }
+sub get_iterator { my ($_list) = @_ }
+sub insert { my ($_list, $_attr) = @_ }
+sub insert_before { my ($_list, $_attr) = @_ }
+sub new { my ($_class) = @_ }
+sub splice { my ($_list, $_other, $_pos, $_len) = @_ }
+
+package Pango::AttrRise;
+our @ISA = qw();
+sub new { my ($_class, $_rise, @_more_paras) = @_ }
+
+package Pango::AttrScale;
+our @ISA = qw();
+sub new { my ($_class, $_scale, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrShape;
+our @ISA = qw();
+sub ink_rect { my ($_attr, @_more_paras) = @_ }
+sub logical_rect { my ($_attr, @_more_paras) = @_ }
+sub new { my ($_class, $_ink_rect, $_logical_rect, @_more_paras) = @_ }
+
+package Pango::AttrSize;
+our @ISA = qw();
+sub new { my ($_class, $_size, @_more_paras) = @_ }
+sub new_absolute { my ($_class, $_size, @_more_paras) = @_ }
+
+package Pango::AttrStretch;
+our @ISA = qw();
+sub new { my ($_class, $_stretch, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrStrikethrough;
+our @ISA = qw();
+sub new { my ($_class, $_strikethrough, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrStrikethroughColor;
+our @ISA = qw();
+sub new { my ($_class, $_red, $_green, $_blue, @_more_paras) = @_ }
+
+package Pango::AttrString;
+our @ISA = qw();
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrStyle;
+our @ISA = qw();
+sub new { my ($_class, $_style, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrUnderline;
+our @ISA = qw();
+sub new { my ($_class, $_underline, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrUnderlineColor;
+our @ISA = qw();
+sub new { my ($_class, $_red, $_green, $_blue, @_more_paras) = @_ }
+
+package Pango::AttrVariant;
+our @ISA = qw();
+sub new { my ($_class, $_variant, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::AttrWeight;
+our @ISA = qw();
+sub new { my ($_class, $_weight, @_more_paras) = @_ }
+sub value { my ($_attr, @_more_paras) = @_ }
+
+package Pango::Attribute;
+our @ISA = qw();
+sub end_index { my ($_attr, @_more_paras) = @_ }
+sub equal { my ($_attr1, $_attr2) = @_ }
+sub start_index { my ($_attr, @_more_paras) = @_ }
+
+package Pango::Cairo;
+our @ISA = qw();
+sub create_layout { my ($_cr) = @_ }
+sub error_underline_path { my ($_cr, $_x, $_y, $_width, $_height) = @_ }
+sub glyph_string_path { my ($_cr, $_font, $_glyphs) = @_ }
+sub layout_line_path { my ($_cr, $_line) = @_ }
+sub layout_path { my ($_cr, $_layout) = @_ }
+sub show_error_underline { my ($_cr, $_x, $_y, $_width, $_height) = @_ }
+sub show_glyph_string { my ($_cr, $_font, $_glyphs) = @_ }
+sub show_layout { my ($_cr, $_layout) = @_ }
+sub show_layout_line { my ($_cr, $_line) = @_ }
+sub update_context { my ($_cr, $_context) = @_ }
+sub update_layout { my ($_cr, $_layout) = @_ }
+
+package Pango::Cairo::Context;
+our @ISA = qw();
+sub get_font_options { my ($_context) = @_ }
+sub get_resolution { my ($_context) = @_ }
+sub set_font_options { my ($_context, $_options) = @_ }
+sub set_resolution { my ($_context, $_dpi) = @_ }
+sub set_shape_renderer { my ($_context, $_o_func, $_o_data) = @_ }
+
+package Pango::Cairo::Font;
+our @ISA = qw();
+sub get_scaled_font { my ($_font) = @_ }
+
+package Pango::Cairo::FontMap;
+our @ISA = qw();
+sub create_context { my ($_fontmap) = @_ }
+sub get_default { my ($_class) = @_ }
+sub get_font_type { my ($_fontmap) = @_ }
+sub get_resolution { my ($_fontmap) = @_ }
+sub new { my ($_class) = @_ }
+sub new_for_font_type { my ($_class, $_fonttype) = @_ }
+sub set_resolution { my ($_fontmap, $_dpi) = @_ }
+
+package Pango::Color;
+our @ISA = qw();
+sub parse { my ($_class, $_spec) = @_ }
+sub to_string { my (@_more_paras) = @_ }
+
+package Pango::Context;
+our @ISA = qw();
+sub get_base_dir { my ($_context) = @_ }
+sub get_base_gravity { my ($_context) = @_ }
+sub get_font_description { my ($_context) = @_ }
+sub get_font_map { my ($_context) = @_ }
+sub get_gravity { my ($_context) = @_ }
+sub get_gravity_hint { my ($_context) = @_ }
+sub get_language { my ($_context) = @_ }
+sub get_matrix { my ($_context) = @_ }
+sub get_metrics { my ($_context, $_desc, $_language) = @_ }
+sub list_families { my ($_context) = @_ }
+sub load_font { my ($_context, $_desc) = @_ }
+sub load_fontset { my ($_context, $_desc, $_language) = @_ }
+sub set_base_dir { my ($_context, $_direction) = @_ }
+sub set_base_gravity { my ($_context, $_gravity) = @_ }
+sub set_font_description { my ($_context, $_desc) = @_ }
+sub set_gravity_hint { my ($_context, $_hint) = @_ }
+sub set_language { my ($_context, $_language) = @_ }
+sub set_matrix { my ($_context, $_matrix) = @_ }
+
+package Pango::Font;
+our @ISA = qw();
+sub describe { my ($_font) = @_ }
+sub describe_with_absolute_size { my ($_font) = @_ }
+sub get_font_map { my ($_font) = @_ }
+sub get_glyph_extents { my ($_font, $_glyph) = @_ }
+sub get_metrics { my ($_font, $_language) = @_ }
+
+package Pango::FontDescription;
+our @ISA = qw();
+sub better_match { my ($_desc, $_old_match, $_new_match) = @_ }
+sub equal { my ($_desc1, $_desc2) = @_ }
+sub from_string { my ($_class, $_str) = @_ }
+sub get_family { my ($_desc) = @_ }
+sub get_gravity { my ($_desc) = @_ }
+sub get_set_fields { my ($_desc) = @_ }
+sub get_size { my ($_desc) = @_ }
+sub get_size_is_absolute { my ($_desc) = @_ }
+sub get_stretch { my ($_desc) = @_ }
+sub get_style { my ($_desc) = @_ }
+sub get_variant { my ($_desc) = @_ }
+sub get_weight { my ($_desc) = @_ }
+sub hash { my ($_desc) = @_ }
+sub merge { my ($_desc, $_desc_to_merge, $_replace_existing) = @_ }
+sub merge_static { my ($_desc, $_desc_to_merge, $_replace_existing) = @_ }
+sub new { my ($_class) = @_ }
+sub set_absolute_size { my ($_desc, $_size) = @_ }
+sub set_family { my ($_desc, $_family) = @_ }
+sub set_family_static { my ($_desc, $_family) = @_ }
+sub set_gravity { my ($_desc, $_gravity) = @_ }
+sub set_size { my ($_desc, $_size) = @_ }
+sub set_stretch { my ($_desc, $_stretch) = @_ }
+sub set_style { my ($_desc, $_style) = @_ }
+sub set_variant { my ($_desc, $_variant) = @_ }
+sub set_weight { my ($_desc, $_weight) = @_ }
+sub to_filename { my ($_desc) = @_ }
+sub to_string { my ($_desc) = @_ }
+sub unset_fields { my ($_desc, $_to_unset) = @_ }
+
+package Pango::FontFace;
+our @ISA = qw();
+sub describe { my ($_face) = @_ }
+sub get_face_name { my ($_face) = @_ }
+sub is_synthesized { my ($_face) = @_ }
+sub list_sizes { my ($_face) = @_ }
+
+package Pango::FontFamily;
+our @ISA = qw();
+sub get_name { my ($_family) = @_ }
+sub is_monospace { my ($_family) = @_ }
+sub list_faces { my ($_family) = @_ }
+
+package Pango::FontMap;
+our @ISA = qw();
+sub list_families { my ($_fontmap) = @_ }
+sub load_font { my ($_fontmap, $_context, $_desc) = @_ }
+sub load_fontset { my ($_fontmap, $_context, $_desc, $_language) = @_ }
+
+package Pango::FontMetrics;
+our @ISA = qw();
+sub get_approximate_char_width { my ($_metrics) = @_ }
+sub get_approximate_digit_width { my ($_metrics) = @_ }
+sub get_ascent { my ($_metrics) = @_ }
+sub get_descent { my ($_metrics) = @_ }
+sub get_strikethrough_position { my ($_metrics) = @_ }
+sub get_strikethrough_thickness { my ($_metrics) = @_ }
+sub get_underline_position { my ($_metrics) = @_ }
+sub get_underline_thickness { my ($_metrics) = @_ }
+
+package Pango::Fontset;
+our @ISA = qw();
+sub Pango::Fontset::foreach { my ($_fontset, $_func, $_o_data) = @_ }
+sub get_font { my ($_fontset, $_wc) = @_ }
+sub get_metrics { my ($_fontset) = @_ }
+
+package Pango::Gravity;
+our @ISA = qw();
+sub get_for_matrix { my ($_matrix) = @_ }
+sub get_for_script { my ($_script, $_base_gravity, $_hint) = @_ }
+sub is_vertical { my ($_gravity) = @_ }
+sub to_rotation { my ($_gravity) = @_ }
+
+package Pango::Language;
+our @ISA = qw();
+sub from_string { my ($_class, $_language) = @_ }
+sub get_default { my ($_class) = @_ }
+sub includes_script { my ($_language, $_script) = @_ }
+sub matches { my ($_language, $_range_list) = @_ }
+sub to_string { my ($_language) = @_ }
+
+package Pango::Layout;
+our @ISA = qw();
+sub context_changed { my ($_layout) = @_ }
+sub copy { my ($_src) = @_ }
+sub get_alignment { my ($_layout) = @_ }
+sub get_attributes { my ($_layout) = @_ }
+sub get_auto_dir { my ($_layout) = @_ }
+sub get_baseline { my ($_layout) = @_ }
+sub get_context { my ($_layout) = @_ }
+sub get_cursor_pos { my ($_layout, $_index_) = @_ }
+sub get_ellipsize { my ($_layout) = @_ }
+sub get_extents { my ($_layout) = @_ }
+sub get_font_description { my ($_layout) = @_ }
+sub get_height { my ($_layout) = @_ }
+sub get_indent { my ($_layout) = @_ }
+sub get_iter { my ($_layout) = @_ }
+sub get_justify { my ($_layout) = @_ }
+sub get_line { my ($_layout, $_line) = @_ }
+sub get_line_count { my ($_layout) = @_ }
+sub get_line_readonly { my ($_layout, $_line) = @_ }
+sub get_lines { my ($_layout) = @_ }
+sub get_lines_readonly { my ($_layout) = @_ }
+sub get_log_attrs { my ($_layout) = @_ }
+sub get_pixel_extents { my ($_layout) = @_ }
+sub get_pixel_size { my ($_layout) = @_ }
+sub get_single_paragraph_mode { my ($_layout) = @_ }
+sub get_size { my ($_layout) = @_ }
+sub get_spacing { my ($_layout) = @_ }
+sub get_tabs { my ($_layout) = @_ }
+sub get_text { my ($_layout) = @_ }
+sub get_unknown_glyphs_count { my ($_layout) = @_ }
+sub get_width { my ($_layout) = @_ }
+sub get_wrap { my ($_layout) = @_ }
+sub index_to_pos { my ($_layout, $_index_) = @_ }
+sub is_ellipsized { my ($_layout) = @_ }
+sub is_wrapped { my ($_layout) = @_ }
+sub move_cursor_visually { my ($_layout, $_strong, $_old_index, $_old_trailing, $_direction) = @_ }
+sub new { my ($_class, $_context) = @_ }
+sub set_alignment { my ($_layout, $_alignment) = @_ }
+sub set_attributes { my ($_layout, $_attrs) = @_ }
+sub set_auto_dir { my ($_layout, $_auto_dir) = @_ }
+sub set_ellipsize { my ($_layout, $_ellipsize) = @_ }
+sub set_font_description { my ($_layout, $_desc) = @_ }
+sub set_height { my ($_layout, $_height) = @_ }
+sub set_indent { my ($_layout, $_newval) = @_ }
+sub set_justify { my ($_layout, $_newval) = @_ }
+sub set_markup { my ($_layout, $_markup, $_markup) = @_ }
+sub set_markup_with_accel { my ($_layout, $_markup, $_markup, $_accel_marker) = @_ }
+sub set_single_paragraph_mode { my ($_layout, $_newval) = @_ }
+sub set_spacing { my ($_layout, $_newval) = @_ }
+sub set_tabs { my ($_layout, $_tabs) = @_ }
+sub set_text { my ($_layout, $_text, $_text) = @_ }
+sub set_width { my ($_layout, $_newval) = @_ }
+sub set_wrap { my ($_layout, $_wrap) = @_ }
+sub xy_to_index { my ($_layout, $_x, $_y) = @_ }
+
+package Pango::LayoutIter;
+our @ISA = qw();
+sub at_last_line { my ($_iter) = @_ }
+sub get_baseline { my ($_iter) = @_ }
+sub get_char_extents { my ($_iter) = @_ }
+sub get_cluster_extents { my ($_iter) = @_ }
+sub get_index { my ($_iter) = @_ }
+sub get_layout { my ($_iter) = @_ }
+sub get_layout_extents { my ($_iter) = @_ }
+sub get_line { my ($_iter) = @_ }
+sub get_line_extents { my ($_iter) = @_ }
+sub get_line_readonly { my ($_iter) = @_ }
+sub get_line_yrange { my ($_iter) = @_ }
+sub get_run_extents { my ($_iter) = @_ }
+sub next_char { my ($_iter) = @_ }
+sub next_cluster { my ($_iter) = @_ }
+sub next_line { my ($_iter) = @_ }
+sub next_run { my ($_iter) = @_ }
+
+package Pango::LayoutLine;
+our @ISA = qw();
+sub get_extents { my ($_line) = @_ }
+sub get_pixel_extents { my ($_line) = @_ }
+sub get_x_ranges { my ($_line, $_start_index, $_end_index) = @_ }
+sub index_to_x { my ($_line, $_index_, $_trailing) = @_ }
+sub x_to_index { my ($_line, $_x_pos) = @_ }
+
+package Pango::Matrix;
+our @ISA = qw();
+sub concat { my ($_matrix, $_new_matrix) = @_ }
+sub new { my ($_class, $_o_xx, $_o_xy, $_o_yx, $_o_yy, $_o_x0, $_o_y0) = @_ }
+sub rotate { my ($_matrix, $_degrees) = @_ }
+sub scale { my ($_matrix, $_scale_x, $_scale_y) = @_ }
+sub transform_distance { my ($_matrix) = @_ }
+sub transform_pixel_rectangle { my ($_matrix, $_rect) = @_ }
+sub transform_point { my ($_matrix) = @_ }
+sub transform_rectangle { my ($_matrix, $_rect) = @_ }
+sub translate { my ($_matrix, $_tx, $_ty) = @_ }
+sub x0 { my ($_matrix, $_o_new) = @_ }
+sub xx { my ($_matrix, $_o_new) = @_ }
+sub xy { my ($_matrix, $_o_new) = @_ }
+sub y0 { my ($_matrix, $_o_new) = @_ }
+sub yx { my ($_matrix, $_o_new) = @_ }
+sub yy { my ($_matrix, $_o_new) = @_ }
+
+package Pango::Renderer;
+our @ISA = qw();
+sub activate { my ($_renderer) = @_ }
+sub deactivate { my ($_renderer) = @_ }
+sub draw_error_underline { my ($_renderer, $_x, $_y, $_width, $_height) = @_ }
+sub draw_glyph { my ($_renderer, $_font, $_glyph, $_x, $_y) = @_ }
+sub draw_layout { my ($_renderer, $_layout, $_x, $_y) = @_ }
+sub draw_layout_line { my ($_renderer, $_line, $_x, $_y) = @_ }
+sub draw_rectangle { my ($_renderer, $_part, $_x, $_y, $_width, $_height) = @_ }
+sub draw_trapezoid { my ($_renderer, $_part, $_y1_, $_x11, $_x21, $_y2, $_x12, $_x22) = @_ }
+sub get_color { my ($_renderer, $_part) = @_ }
+sub get_layout { my ($_renderer) = @_ }
+sub get_layout_line { my ($_renderer) = @_ }
+sub get_matrix { my ($_renderer) = @_ }
+sub part_changed { my ($_renderer, $_part) = @_ }
+sub set_color { my ($_renderer, $_part, $_color) = @_ }
+sub set_matrix { my ($_renderer, $_matrix) = @_ }
+
+package Pango::Script;
+our @ISA = qw();
+sub for_unichar { my ($_class, $_ch) = @_ }
+sub get_sample_language { my ($_class, $_script) = @_ }
+
+package Pango::ScriptIter;
+our @ISA = qw();
+sub get_range { my ($_iter) = @_ }
+sub new { my ($_class, $_text) = @_ }
+sub next { my ($_iter) = @_ }
+
+package Pango::TabArray;
+our @ISA = qw();
+sub get_positions_in_pixels { my ($_tab_array) = @_ }
+sub get_size { my ($_tab_array) = @_ }
+sub get_tab { my ($_tab_array, $_tab_index) = @_ }
+sub get_tabs { my ($_tab_array) = @_ }
+sub new { my ($_class, $_initial_size, $_positions_in_pixels, @_more_paras) = @_ }
+sub new_with_positions { my ($_class, $_initial_size, $_positions_in_pixels, @_more_paras) = @_ }
+sub resize { my ($_tab_array, $_new_size) = @_ }
+sub set_tab { my ($_tab_array, $_tab_index, $_alignment, $_location) = @_ }