Cairo__CPrimitives.st
changeset 29 6ba06265e543
child 30 c8fe298c8cc7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__CPrimitives.st	Sun Dec 28 22:38:24 2014 +0100
@@ -0,0 +1,2144 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+Object subclass:#CPrimitives
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Cairo-Primitives'
+!
+
+!CPrimitives class methodsFor:'accessing'!
+
+dllPath
+
+    OperatingSystem isMSWINDOWSlike ifTrue:[
+        ^ #( 'C:\Windows' 'C:\Windows\System32' "Wild guess, should not harm" )
+    ].
+
+    OperatingSystem isUNIXlike ifTrue:[
+        OperatingSystem getSystemType == #linux ifTrue:[
+            | path |
+
+            path := #( '/lib' '/usr/lib' '/usr/local/lib' ).
+            (OperatingSystem getSystemInfo at:#machine) = 'x86_64' ifTrue:[
+                "If the machine is 64bit, prepend standard path for 32bit libs.
+                 Leave standard paths at the end, as the system might be completely 
+                 32bit but running on 64bit-capable CPU.
+
+                CAVEAT: This is bit dangerous, as on 64bit OS, if ia32 libs are
+                not installed byt 64bit sqlite libs are, then 64bit libs are found
+                and when a function is called, segfault will occur!!
+
+                Q: Is there a way how to figure out if the OS itself is 32bit,
+                regardles on CPU?"
+                path := #( '/lib32' '/usr/lib32' '/usr/local/lib32' ) , path.
+            ].
+            ^path
+
+        ].
+    ].
+
+    self error:'Unsupported operating system'
+
+    "
+        SqliteLibrary dllPath
+    "
+
+    "Created: / 31-08-2011 / 18:02:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+libraryName
+
+    OperatingSystem isUNIXlike ifTrue:[^'libcairo.so.2'].
+
+    OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+    self error:'Library name for host OS is not known'
+! !
+
+!CPrimitives class methodsFor:'primitives'!
+
+cairo_append_path: cr _: path 
+
+    <cdecl: void "cairo_append_path" ( Cairo::GraphicsContext Cairo::Path ) >
+    self primitiveFailed
+!
+
+cairo_arc: cr _: xc _: yc _: radius _: angle1 _: angle2 
+
+    <cdecl: void "cairo_arc" ( Cairo::GraphicsContext double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_arc_negative: cr _: xc _: yc _: radius _: angle1 _: angle2 
+
+    <cdecl: void "cairo_arc_negative" ( Cairo::GraphicsContext double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_clip: cr 
+
+    <cdecl: void "cairo_clip" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_clip_extents: cr _: x1 _: y1 _: x2 _: y2 
+
+    <cdecl: void "cairo_clip_extents" ( Cairo::GraphicsContext doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_clip_preserve: cr 
+
+    <cdecl: void "cairo_clip_preserve" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_close_path: cr 
+
+    <cdecl: void "cairo_close_path" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_copy_clip_rectangle_list: cr 
+
+    <cdecl: Cairo::RectangleList "cairo_copy_clip_rectangle_list" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_copy_page: cr 
+
+    <cdecl: void "cairo_copy_page" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_copy_path: cr 
+
+    <cdecl: Cairo::Path "cairo_copy_path" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_copy_path_flat: cr 
+
+    <cdecl: Cairo::Path "cairo_copy_path_flat" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_create: target 
+
+    <cdecl: Cairo::GraphicsContext "cairo_create" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_curve_to: cr _: x1 _: y1 _: x2 _: y2 _: x3 _: y3 
+
+    <cdecl: void "cairo_curve_to" ( Cairo::GraphicsContext double double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_debug_reset_static_data
+
+    <cdecl: void "cairo_debug_reset_static_data" ( ) >
+    self primitiveFailed
+!
+
+cairo_destroy: cr 
+
+    <cdecl: void "cairo_destroy" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_device_acquire: device 
+
+    <cdecl: int32 "cairo_device_acquire" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_destroy: device 
+
+    <cdecl: void "cairo_device_destroy" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_finish: device 
+
+    <cdecl: void "cairo_device_finish" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_flush: device 
+
+    <cdecl: void "cairo_device_flush" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_get_reference_count: device 
+
+    <cdecl: uint32 "cairo_device_get_reference_count" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_get_type: device 
+
+    <cdecl: int32 "cairo_device_get_type" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_get_user_data: device _: key 
+
+    <cdecl: voidPointer "cairo_device_get_user_data" ( Cairo::Device Cairo::UserDataKey ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_elapsed: device 
+
+    <cdecl: double "cairo_device_observer_elapsed" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_fill_elapsed: device 
+
+    <cdecl: double "cairo_device_observer_fill_elapsed" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_glyphs_elapsed: device 
+
+    <cdecl: double "cairo_device_observer_glyphs_elapsed" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_mask_elapsed: device 
+
+    <cdecl: double "cairo_device_observer_mask_elapsed" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_paint_elapsed: device 
+
+    <cdecl: double "cairo_device_observer_paint_elapsed" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_print: device _: write_func _: closure 
+
+    <cdecl: int32 "cairo_device_observer_print" ( Cairo::Device pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_device_observer_stroke_elapsed: device 
+
+    <cdecl: double "cairo_device_observer_stroke_elapsed" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_reference: device 
+
+    <cdecl: Cairo::Device "cairo_device_reference" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_release: device 
+
+    <cdecl: void "cairo_device_release" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_set_user_data: device _: key _: user_data _: destroy 
+
+    <cdecl: int32 "cairo_device_set_user_data" ( Cairo::Device Cairo::UserDataKey voidPointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_device_status: device 
+
+    <cdecl: int32 "cairo_device_status" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_device_to_user: cr _: x _: y 
+
+    <cdecl: void "cairo_device_to_user" ( Cairo::GraphicsContext doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_device_to_user_distance: cr _: dx _: dy 
+
+    <cdecl: void "cairo_device_to_user_distance" ( Cairo::GraphicsContext doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_fill: cr 
+
+    <cdecl: void "cairo_fill" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_fill_extents: cr _: x1 _: y1 _: x2 _: y2 
+
+    <cdecl: void "cairo_fill_extents" ( Cairo::GraphicsContext doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_fill_preserve: cr 
+
+    <cdecl: void "cairo_fill_preserve" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_font_extents: cr _: extents 
+
+    <cdecl: void "cairo_font_extents" ( Cairo::GraphicsContext Cairo::FontExtents ) >
+    self primitiveFailed
+!
+
+cairo_font_face_destroy: font_face 
+
+    <cdecl: void "cairo_font_face_destroy" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_font_face_get_reference_count: font_face 
+
+    <cdecl: uint32 "cairo_font_face_get_reference_count" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_font_face_get_type: font_face 
+
+    <cdecl: int32 "cairo_font_face_get_type" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_font_face_get_user_data: font_face _: key 
+
+    <cdecl: voidPointer "cairo_font_face_get_user_data" ( Cairo::FontFace Cairo::UserDataKey ) >
+    self primitiveFailed
+!
+
+cairo_font_face_reference: font_face 
+
+    <cdecl: Cairo::FontFace "cairo_font_face_reference" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_font_face_set_user_data: font_face _: key _: user_data _: destroy 
+
+    <cdecl: int32 "cairo_font_face_set_user_data" ( Cairo::FontFace Cairo::UserDataKey voidPointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_font_face_status: font_face 
+
+    <cdecl: int32 "cairo_font_face_status" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_font_options_copy: original 
+
+    <cdecl: Cairo::FontOptions "cairo_font_options_copy" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_create
+
+    <cdecl: Cairo::FontOptions "cairo_font_options_create" ( ) >
+    self primitiveFailed
+!
+
+cairo_font_options_destroy: options 
+
+    <cdecl: void "cairo_font_options_destroy" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_equal: options _: other 
+
+    <cdecl: int32 "cairo_font_options_equal" ( Cairo::FontOptions Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_get_antialias: options 
+
+    <cdecl: int32 "cairo_font_options_get_antialias" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_get_hint_metrics: options 
+
+    <cdecl: int32 "cairo_font_options_get_hint_metrics" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_get_hint_style: options 
+
+    <cdecl: int32 "cairo_font_options_get_hint_style" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_get_subpixel_order: options 
+
+    <cdecl: int32 "cairo_font_options_get_subpixel_order" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_hash: options 
+
+    <cdecl: long "cairo_font_options_hash" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_merge: options _: other 
+
+    <cdecl: void "cairo_font_options_merge" ( Cairo::FontOptions Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_font_options_set_antialias: options _: antialias 
+
+    <cdecl: void "cairo_font_options_set_antialias" ( Cairo::FontOptions int32 ) >
+    self primitiveFailed
+!
+
+cairo_font_options_set_hint_metrics: options _: hint_metrics 
+
+    <cdecl: void "cairo_font_options_set_hint_metrics" ( Cairo::FontOptions int32 ) >
+    self primitiveFailed
+!
+
+cairo_font_options_set_hint_style: options _: hint_style 
+
+    <cdecl: void "cairo_font_options_set_hint_style" ( Cairo::FontOptions int32 ) >
+    self primitiveFailed
+!
+
+cairo_font_options_set_subpixel_order: options _: subpixel_order 
+
+    <cdecl: void "cairo_font_options_set_subpixel_order" ( Cairo::FontOptions int32 ) >
+    self primitiveFailed
+!
+
+cairo_font_options_status: options 
+
+    <cdecl: int32 "cairo_font_options_status" ( Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_format_stride_for_width: format _: width 
+
+    <cdecl: int32 "cairo_format_stride_for_width" ( int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_get_antialias: cr 
+
+    <cdecl: int32 "cairo_get_antialias" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_current_point: cr _: x _: y 
+
+    <cdecl: void "cairo_get_current_point" ( Cairo::GraphicsContext doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_get_dash: cr _: dashes _: offset 
+
+    <cdecl: void "cairo_get_dash" ( Cairo::GraphicsContext doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_get_dash_count: cr 
+
+    <cdecl: int32 "cairo_get_dash_count" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_fill_rule: cr 
+
+    <cdecl: int32 "cairo_get_fill_rule" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_font_face: cr 
+
+    <cdecl: Cairo::FontFace "cairo_get_font_face" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_font_matrix: cr _: matrix 
+
+    <cdecl: void "cairo_get_font_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_get_font_options: cr _: options 
+
+    <cdecl: void "cairo_get_font_options" ( Cairo::GraphicsContext Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_get_group_target: cr 
+
+    <cdecl: Cairo::Surface "cairo_get_group_target" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_line_cap: cr 
+
+    <cdecl: int32 "cairo_get_line_cap" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_line_join: cr 
+
+    <cdecl: int32 "cairo_get_line_join" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_line_width: cr 
+
+    <cdecl: double "cairo_get_line_width" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_matrix: cr _: matrix 
+
+    <cdecl: void "cairo_get_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_get_miter_limit: cr 
+
+    <cdecl: double "cairo_get_miter_limit" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_operator: cr 
+
+    <cdecl: int32 "cairo_get_operator" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_reference_count: cr 
+
+    <cdecl: uint32 "cairo_get_reference_count" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_scaled_font: cr 
+
+    <cdecl: Cairo::ScaledFont "cairo_get_scaled_font" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_source: cr 
+
+    <cdecl: Cairo::Pattern "cairo_get_source" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_target: cr 
+
+    <cdecl: Cairo::Surface "cairo_get_target" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_tolerance: cr 
+
+    <cdecl: double "cairo_get_tolerance" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_get_user_data: cr _: key 
+
+    <cdecl: voidPointer "cairo_get_user_data" ( Cairo::GraphicsContext Cairo::UserDataKey ) >
+    self primitiveFailed
+!
+
+cairo_glyph_allocate: num_glyphs 
+
+    <cdecl: Cairo::Glyph "cairo_glyph_allocate" ( int32 ) >
+    self primitiveFailed
+!
+
+cairo_glyph_extents: cr _: glyphs _: num_glyphs _: extents 
+
+    <cdecl: void "cairo_glyph_extents" ( Cairo::GraphicsContext Cairo::Glyph int32 Cairo::TextExtents ) >
+    self primitiveFailed
+!
+
+cairo_glyph_free: glyphs 
+
+    <cdecl: void "cairo_glyph_free" ( Cairo::Glyph ) >
+    self primitiveFailed
+!
+
+cairo_glyph_path: cr _: glyphs _: num_glyphs 
+
+    <cdecl: void "cairo_glyph_path" ( Cairo::GraphicsContext Cairo::Glyph int32 ) >
+    self primitiveFailed
+!
+
+cairo_has_current_point: cr 
+
+    <cdecl: int32 "cairo_has_current_point" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_identity_matrix: cr 
+
+    <cdecl: void "cairo_identity_matrix" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_create: format _: width _: height 
+
+    <cdecl: Cairo::Surface "cairo_image_surface_create" ( int32 int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_create_for_data: data _: format _: width _: height _: stride 
+
+    <cdecl: Cairo::Surface "cairo_image_surface_create_for_data" ( charPointer int32 int32 int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_create_from_png: filename 
+
+    <cdecl: Cairo::Surface "cairo_image_surface_create_from_png" ( charPointer ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_create_from_png_stream: read_func _: closure 
+
+    <cdecl: Cairo::Surface "cairo_image_surface_create_from_png_stream" ( pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_get_data: surface 
+
+    <cdecl: charPointer "cairo_image_surface_get_data" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_get_format: surface 
+
+    <cdecl: int32 "cairo_image_surface_get_format" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_get_height: surface 
+
+    <cdecl: int32 "cairo_image_surface_get_height" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_get_stride: surface 
+
+    <cdecl: int32 "cairo_image_surface_get_stride" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_image_surface_get_width: surface 
+
+    <cdecl: int32 "cairo_image_surface_get_width" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_in_clip: cr _: x _: y 
+
+    <cdecl: int32 "cairo_in_clip" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_in_fill: cr _: x _: y 
+
+    <cdecl: int32 "cairo_in_fill" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_in_stroke: cr _: x _: y 
+
+    <cdecl: int32 "cairo_in_stroke" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_line_to: cr _: x _: y 
+
+    <cdecl: void "cairo_line_to" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_mask: cr _: pattern 
+
+    <cdecl: void "cairo_mask" ( Cairo::GraphicsContext Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_mask_surface: cr _: surface _: surface_x _: surface_y 
+
+    <cdecl: void "cairo_mask_surface" ( Cairo::GraphicsContext Cairo::Surface double double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_init: matrix _: xx _: yx _: xy _: yy _: x0 _: y0 
+
+    <cdecl: void "cairo_matrix_init" ( Cairo::Matrix double double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_init_identity: matrix 
+
+    <cdecl: void "cairo_matrix_init_identity" ( Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_matrix_init_rotate: matrix _: radians 
+
+    <cdecl: void "cairo_matrix_init_rotate" ( Cairo::Matrix double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_init_scale: matrix _: sx _: sy 
+
+    <cdecl: void "cairo_matrix_init_scale" ( Cairo::Matrix double double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_init_translate: matrix _: tx _: ty 
+
+    <cdecl: void "cairo_matrix_init_translate" ( Cairo::Matrix double double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_invert: matrix 
+
+    <cdecl: int32 "cairo_matrix_invert" ( Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_matrix_multiply: result _: a _: b 
+
+    <cdecl: void "cairo_matrix_multiply" ( Cairo::Matrix Cairo::Matrix Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_matrix_rotate: matrix _: radians 
+
+    <cdecl: void "cairo_matrix_rotate" ( Cairo::Matrix double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_scale: matrix _: sx _: sy 
+
+    <cdecl: void "cairo_matrix_scale" ( Cairo::Matrix double double ) >
+    self primitiveFailed
+!
+
+cairo_matrix_transform_distance: matrix _: dx _: dy 
+
+    <cdecl: void "cairo_matrix_transform_distance" ( Cairo::Matrix doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_matrix_transform_point: matrix _: x _: y 
+
+    <cdecl: void "cairo_matrix_transform_point" ( Cairo::Matrix doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_matrix_translate: matrix _: tx _: ty 
+
+    <cdecl: void "cairo_matrix_translate" ( Cairo::Matrix double double ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_begin_patch: pattern 
+
+    <cdecl: void "cairo_mesh_pattern_begin_patch" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_curve_to: pattern _: x1 _: y1 _: x2 _: y2 _: x3 _: y3 
+
+    <cdecl: void "cairo_mesh_pattern_curve_to" ( Cairo::Pattern double double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_end_patch: pattern 
+
+    <cdecl: void "cairo_mesh_pattern_end_patch" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_get_control_point: pattern _: patch_num _: point_num _: x _: y 
+
+    <cdecl: int32 "cairo_mesh_pattern_get_control_point" ( Cairo::Pattern uint32 uint32 doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_get_corner_color_rgba: pattern _: patch_num _: corner_num _: red _: green _: blue _: alpha 
+
+    <cdecl: int32 "cairo_mesh_pattern_get_corner_color_rgba" ( Cairo::Pattern uint32 uint32 doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_get_patch_count: pattern _: count 
+
+    <cdecl: int32 "cairo_mesh_pattern_get_patch_count" ( Cairo::Pattern int32Pointer ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_get_path: pattern _: patch_num 
+
+    <cdecl: Cairo::Path "cairo_mesh_pattern_get_path" ( Cairo::Pattern uint32 ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_line_to: pattern _: x _: y 
+
+    <cdecl: void "cairo_mesh_pattern_line_to" ( Cairo::Pattern double double ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_move_to: pattern _: x _: y 
+
+    <cdecl: void "cairo_mesh_pattern_move_to" ( Cairo::Pattern double double ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_set_control_point: pattern _: point_num _: x _: y 
+
+    <cdecl: void "cairo_mesh_pattern_set_control_point" ( Cairo::Pattern uint32 double double ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_set_corner_color_rgb: pattern _: corner_num _: red _: green _: blue 
+
+    <cdecl: void "cairo_mesh_pattern_set_corner_color_rgb" ( Cairo::Pattern uint32 double double double ) >
+    self primitiveFailed
+!
+
+cairo_mesh_pattern_set_corner_color_rgba: pattern _: corner_num _: red _: green _: blue _: alpha 
+
+    <cdecl: void "cairo_mesh_pattern_set_corner_color_rgba" ( Cairo::Pattern uint32 double double double double ) >
+    self primitiveFailed
+!
+
+cairo_move_to: cr _: x _: y 
+
+    <cdecl: void "cairo_move_to" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_new_path: cr 
+
+    <cdecl: void "cairo_new_path" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_new_sub_path: cr 
+
+    <cdecl: void "cairo_new_sub_path" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_paint: cr 
+
+    <cdecl: void "cairo_paint" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_paint_with_alpha: cr _: alpha 
+
+    <cdecl: void "cairo_paint_with_alpha" ( Cairo::GraphicsContext double ) >
+    self primitiveFailed
+!
+
+cairo_path_destroy: path 
+
+    <cdecl: void "cairo_path_destroy" ( Cairo::Path ) >
+    self primitiveFailed
+!
+
+cairo_path_extents: cr _: x1 _: y1 _: x2 _: y2 
+
+    <cdecl: void "cairo_path_extents" ( Cairo::GraphicsContext doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_add_color_stop_rgb: pattern _: offset _: red _: green _: blue 
+
+    <cdecl: void "cairo_pattern_add_color_stop_rgb" ( Cairo::Pattern double double double double ) >
+    self primitiveFailed
+!
+
+cairo_pattern_add_color_stop_rgba: pattern _: offset _: red _: green _: blue _: alpha 
+
+    <cdecl: void "cairo_pattern_add_color_stop_rgba" ( Cairo::Pattern double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_for_surface: surface 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_for_surface" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_linear: x0 _: y0 _: x1 _: y1 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_linear" ( double double double double ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_mesh
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_mesh" ( ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_radial: cx0 _: cy0 _: radius0 _: cx1 _: cy1 _: radius1 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_radial" ( double double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_raster_source: user_data _: content _: width _: height 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_raster_source" ( voidPointer int32 int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_rgb: red _: green _: blue 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_rgb" ( double double double ) >
+    self primitiveFailed
+!
+
+cairo_pattern_create_rgba: red _: green _: blue _: alpha 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_create_rgba" ( double double double double ) >
+    self primitiveFailed
+!
+
+cairo_pattern_destroy: pattern 
+
+    <cdecl: void "cairo_pattern_destroy" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_color_stop_count: pattern _: count 
+
+    <cdecl: int32 "cairo_pattern_get_color_stop_count" ( Cairo::Pattern int32Pointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_color_stop_rgba: pattern _: index _: offset _: red _: green _: blue _: alpha 
+
+    <cdecl: int32 "cairo_pattern_get_color_stop_rgba" ( Cairo::Pattern int32 doublePointer doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_extend: pattern 
+
+    <cdecl: int32 "cairo_pattern_get_extend" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_filter: pattern 
+
+    <cdecl: int32 "cairo_pattern_get_filter" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_linear_points: pattern _: x0 _: y0 _: x1 _: y1 
+
+    <cdecl: int32 "cairo_pattern_get_linear_points" ( Cairo::Pattern doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_matrix: pattern _: matrix 
+
+    <cdecl: void "cairo_pattern_get_matrix" ( Cairo::Pattern Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_radial_circles: pattern _: x0 _: y0 _: r0 _: x1 _: y1 _: r1 
+
+    <cdecl: int32 "cairo_pattern_get_radial_circles" ( Cairo::Pattern doublePointer doublePointer doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_reference_count: pattern 
+
+    <cdecl: uint32 "cairo_pattern_get_reference_count" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_rgba: pattern _: red _: green _: blue _: alpha 
+
+    <cdecl: int32 "cairo_pattern_get_rgba" ( Cairo::Pattern doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_surface: pattern _: surface 
+
+    <cdecl: int32 "cairo_pattern_get_surface" ( Cairo::Pattern pointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_type: pattern 
+
+    <cdecl: int32 "cairo_pattern_get_type" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pattern_get_user_data: pattern _: key 
+
+    <cdecl: voidPointer "cairo_pattern_get_user_data" ( Cairo::Pattern Cairo::UserDataKey ) >
+    self primitiveFailed
+!
+
+cairo_pattern_reference: pattern 
+
+    <cdecl: Cairo::Pattern "cairo_pattern_reference" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pattern_set_extend: pattern _: extend 
+
+    <cdecl: void "cairo_pattern_set_extend" ( Cairo::Pattern int32 ) >
+    self primitiveFailed
+!
+
+cairo_pattern_set_filter: pattern _: filter 
+
+    <cdecl: void "cairo_pattern_set_filter" ( Cairo::Pattern int32 ) >
+    self primitiveFailed
+!
+
+cairo_pattern_set_matrix: pattern _: matrix 
+
+    <cdecl: void "cairo_pattern_set_matrix" ( Cairo::Pattern Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_pattern_set_user_data: pattern _: key _: user_data _: destroy 
+
+    <cdecl: int32 "cairo_pattern_set_user_data" ( Cairo::Pattern Cairo::UserDataKey voidPointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_pattern_status: pattern 
+
+    <cdecl: int32 "cairo_pattern_status" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_pdf_get_versions: versions _: num_versions 
+
+    <cdecl: void "cairo_pdf_get_versions" ( pointer int32Pointer ) >
+    self primitiveFailed
+!
+
+cairo_pdf_surface_create: filename _: width_in_points _: height_in_points 
+
+    <cdecl: Cairo::Surface "cairo_pdf_surface_create" ( charPointer double double ) >
+    self primitiveFailed
+!
+
+cairo_pdf_surface_create_for_stream: write_func _: closure _: width_in_points _: height_in_points 
+
+    <cdecl: Cairo::Surface "cairo_pdf_surface_create_for_stream" ( pointer voidPointer double double ) >
+    self primitiveFailed
+!
+
+cairo_pdf_surface_restrict_to_version: surface _: version 
+
+    <cdecl: void "cairo_pdf_surface_restrict_to_version" ( Cairo::Surface int32 ) >
+    self primitiveFailed
+!
+
+cairo_pdf_surface_set_size: surface _: width_in_points _: height_in_points 
+
+    <cdecl: void "cairo_pdf_surface_set_size" ( Cairo::Surface double double ) >
+    self primitiveFailed
+!
+
+cairo_pdf_version_to_string: version 
+
+    <cdecl: charPointer "cairo_pdf_version_to_string" ( int32 ) >
+    self primitiveFailed
+!
+
+cairo_pop_group: cr 
+
+    <cdecl: Cairo::Pattern "cairo_pop_group" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_pop_group_to_source: cr 
+
+    <cdecl: void "cairo_pop_group_to_source" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_push_group: cr 
+
+    <cdecl: void "cairo_push_group" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_push_group_with_content: cr _: content 
+
+    <cdecl: void "cairo_push_group_with_content" ( Cairo::GraphicsContext int32 ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_get_acquire: pattern _: acquire _: release 
+
+    <cdecl: void "cairo_raster_source_pattern_get_acquire" ( Cairo::Pattern pointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_get_callback_data: pattern 
+
+    <cdecl: voidPointer "cairo_raster_source_pattern_get_callback_data" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_get_copy: pattern 
+
+    <cdecl: pointer "cairo_raster_source_pattern_get_copy" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_get_finish: pattern 
+
+    <cdecl: pointer "cairo_raster_source_pattern_get_finish" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_get_snapshot: pattern 
+
+    <cdecl: pointer "cairo_raster_source_pattern_get_snapshot" ( Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_set_acquire: pattern _: acquire _: release 
+
+    <cdecl: void "cairo_raster_source_pattern_set_acquire" ( Cairo::Pattern pointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_set_callback_data: pattern _: data 
+
+    <cdecl: void "cairo_raster_source_pattern_set_callback_data" ( Cairo::Pattern voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_set_copy: pattern _: copy 
+
+    <cdecl: void "cairo_raster_source_pattern_set_copy" ( Cairo::Pattern pointer ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_set_finish: pattern _: finish 
+
+    <cdecl: void "cairo_raster_source_pattern_set_finish" ( Cairo::Pattern pointer ) >
+    self primitiveFailed
+!
+
+cairo_raster_source_pattern_set_snapshot: pattern _: snapshot 
+
+    <cdecl: void "cairo_raster_source_pattern_set_snapshot" ( Cairo::Pattern pointer ) >
+    self primitiveFailed
+!
+
+cairo_recording_surface_create: content _: extents 
+
+    <cdecl: Cairo::Surface "cairo_recording_surface_create" ( int32 Cairo::Rectangle ) >
+    self primitiveFailed
+!
+
+cairo_recording_surface_get_extents: surface _: extents 
+
+    <cdecl: int32 "cairo_recording_surface_get_extents" ( Cairo::Surface Cairo::Rectangle ) >
+    self primitiveFailed
+!
+
+cairo_recording_surface_ink_extents: surface _: x0 _: y0 _: width _: height 
+
+    <cdecl: void "cairo_recording_surface_ink_extents" ( Cairo::Surface doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_rectangle: cr _: x _: y _: width _: height 
+
+    <cdecl: void "cairo_rectangle" ( Cairo::GraphicsContext double double double double ) >
+    self primitiveFailed
+!
+
+cairo_rectangle_list_destroy: rectangle_list 
+
+    <cdecl: void "cairo_rectangle_list_destroy" ( Cairo::RectangleList ) >
+    self primitiveFailed
+!
+
+cairo_reference: cr 
+
+    <cdecl: Cairo::GraphicsContext "cairo_reference" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_region_contains_point: region _: x _: y 
+
+    <cdecl: int32 "cairo_region_contains_point" ( Cairo::Region int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_region_contains_rectangle: region _: rectangle 
+
+    <cdecl: int32 "cairo_region_contains_rectangle" ( Cairo::Region Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_copy: original 
+
+    <cdecl: Cairo::Region "cairo_region_copy" ( Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_create
+
+    <cdecl: Cairo::Region "cairo_region_create" ( ) >
+    self primitiveFailed
+!
+
+cairo_region_create_rectangle: rectangle 
+
+    <cdecl: Cairo::Region "cairo_region_create_rectangle" ( Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_create_rectangles: rects _: count 
+
+    <cdecl: Cairo::Region "cairo_region_create_rectangles" ( Cairo::RectangleInt int32 ) >
+    self primitiveFailed
+!
+
+cairo_region_destroy: region 
+
+    <cdecl: void "cairo_region_destroy" ( Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_equal: a _: b 
+
+    <cdecl: int32 "cairo_region_equal" ( Cairo::Region Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_get_extents: region _: extents 
+
+    <cdecl: void "cairo_region_get_extents" ( Cairo::Region Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_get_rectangle: region _: nth _: rectangle 
+
+    <cdecl: void "cairo_region_get_rectangle" ( Cairo::Region int32 Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_intersect: dst _: other 
+
+    <cdecl: int32 "cairo_region_intersect" ( Cairo::Region Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_intersect_rectangle: dst _: rectangle 
+
+    <cdecl: int32 "cairo_region_intersect_rectangle" ( Cairo::Region Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_is_empty: region 
+
+    <cdecl: int32 "cairo_region_is_empty" ( Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_num_rectangles: region 
+
+    <cdecl: int32 "cairo_region_num_rectangles" ( Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_reference: region 
+
+    <cdecl: Cairo::Region "cairo_region_reference" ( Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_status: region 
+
+    <cdecl: int32 "cairo_region_status" ( Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_subtract: dst _: other 
+
+    <cdecl: int32 "cairo_region_subtract" ( Cairo::Region Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_subtract_rectangle: dst _: rectangle 
+
+    <cdecl: int32 "cairo_region_subtract_rectangle" ( Cairo::Region Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_translate: region _: dx _: dy 
+
+    <cdecl: void "cairo_region_translate" ( Cairo::Region int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_region_union: dst _: other 
+
+    <cdecl: int32 "cairo_region_union" ( Cairo::Region Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_union_rectangle: dst _: rectangle 
+
+    <cdecl: int32 "cairo_region_union_rectangle" ( Cairo::Region Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_region_xor: dst _: other 
+
+    <cdecl: int32 "cairo_region_xor" ( Cairo::Region Cairo::Region ) >
+    self primitiveFailed
+!
+
+cairo_region_xor_rectangle: dst _: rectangle 
+
+    <cdecl: int32 "cairo_region_xor_rectangle" ( Cairo::Region Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_rel_curve_to: cr _: dx1 _: dy1 _: dx2 _: dy2 _: dx3 _: dy3 
+
+    <cdecl: void "cairo_rel_curve_to" ( Cairo::GraphicsContext double double double double double double ) >
+    self primitiveFailed
+!
+
+cairo_rel_line_to: cr _: dx _: dy 
+
+    <cdecl: void "cairo_rel_line_to" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_rel_move_to: cr _: dx _: dy 
+
+    <cdecl: void "cairo_rel_move_to" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_reset_clip: cr 
+
+    <cdecl: void "cairo_reset_clip" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_restore: cr 
+
+    <cdecl: void "cairo_restore" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_rotate: cr _: angle 
+
+    <cdecl: void "cairo_rotate" ( Cairo::GraphicsContext double ) >
+    self primitiveFailed
+!
+
+cairo_save: cr 
+
+    <cdecl: void "cairo_save" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_scale: cr _: sx _: sy 
+
+    <cdecl: void "cairo_scale" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_create: font_face _: font_matrix _: ctm _: options 
+
+    <cdecl: Cairo::ScaledFont "cairo_scaled_font_create" ( Cairo::FontFace Cairo::Matrix Cairo::Matrix Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_destroy: scaled_font 
+
+    <cdecl: void "cairo_scaled_font_destroy" ( Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_extents: scaled_font _: extents 
+
+    <cdecl: void "cairo_scaled_font_extents" ( Cairo::ScaledFont Cairo::FontExtents ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_ctm: scaled_font _: ctm 
+
+    <cdecl: void "cairo_scaled_font_get_ctm" ( Cairo::ScaledFont Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_font_face: scaled_font 
+
+    <cdecl: Cairo::FontFace "cairo_scaled_font_get_font_face" ( Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_font_matrix: scaled_font _: font_matrix 
+
+    <cdecl: void "cairo_scaled_font_get_font_matrix" ( Cairo::ScaledFont Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_font_options: scaled_font _: options 
+
+    <cdecl: void "cairo_scaled_font_get_font_options" ( Cairo::ScaledFont Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_reference_count: scaled_font 
+
+    <cdecl: uint32 "cairo_scaled_font_get_reference_count" ( Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_scale_matrix: scaled_font _: scale_matrix 
+
+    <cdecl: void "cairo_scaled_font_get_scale_matrix" ( Cairo::ScaledFont Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_type: scaled_font 
+
+    <cdecl: int32 "cairo_scaled_font_get_type" ( Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_get_user_data: scaled_font _: key 
+
+    <cdecl: voidPointer "cairo_scaled_font_get_user_data" ( Cairo::ScaledFont Cairo::UserDataKey ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_glyph_extents: scaled_font _: glyphs _: num_glyphs _: extents 
+
+    <cdecl: void "cairo_scaled_font_glyph_extents" ( Cairo::ScaledFont Cairo::Glyph int32 Cairo::TextExtents ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_reference: scaled_font 
+
+    <cdecl: Cairo::ScaledFont "cairo_scaled_font_reference" ( Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_set_user_data: scaled_font _: key _: user_data _: destroy 
+
+    <cdecl: int32 "cairo_scaled_font_set_user_data" ( Cairo::ScaledFont Cairo::UserDataKey voidPointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_status: scaled_font 
+
+    <cdecl: int32 "cairo_scaled_font_status" ( Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_text_extents: scaled_font _: utf8 _: extents 
+
+    <cdecl: void "cairo_scaled_font_text_extents" ( Cairo::ScaledFont charPointer Cairo::TextExtents ) >
+    self primitiveFailed
+!
+
+cairo_scaled_font_text_to_glyphs: scaled_font _: x _: y _: utf8 _: utf8_len _: glyphs _: num_glyphs _: clusters _: num_clusters _: cluster_flags 
+
+    <cdecl: int32 "cairo_scaled_font_text_to_glyphs" ( Cairo::ScaledFont double double charPointer int32 pointer int32Pointer pointer int32Pointer intPointer ) >
+    self primitiveFailed
+!
+
+cairo_select_font_face: cr _: family _: slant _: weight 
+
+    <cdecl: void "cairo_select_font_face" ( Cairo::GraphicsContext charPointer int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_set_antialias: cr _: antialias 
+
+    <cdecl: void "cairo_set_antialias" ( Cairo::GraphicsContext int32 ) >
+    self primitiveFailed
+!
+
+cairo_set_dash: cr _: dashes _: num_dashes _: offset 
+
+    <cdecl: void "cairo_set_dash" ( Cairo::GraphicsContext doublePointer int32 double ) >
+    self primitiveFailed
+!
+
+cairo_set_fill_rule: cr _: fill_rule 
+
+    <cdecl: void "cairo_set_fill_rule" ( Cairo::GraphicsContext int32 ) >
+    self primitiveFailed
+!
+
+cairo_set_font_face: cr _: font_face 
+
+    <cdecl: void "cairo_set_font_face" ( Cairo::GraphicsContext Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_set_font_matrix: cr _: matrix 
+
+    <cdecl: void "cairo_set_font_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_set_font_options: cr _: options 
+
+    <cdecl: void "cairo_set_font_options" ( Cairo::GraphicsContext Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_set_font_size: cr _: size 
+
+    <cdecl: void "cairo_set_font_size" ( Cairo::GraphicsContext double ) >
+    self primitiveFailed
+!
+
+cairo_set_line_cap: cr _: line_cap 
+
+    <cdecl: void "cairo_set_line_cap" ( Cairo::GraphicsContext int32 ) >
+    self primitiveFailed
+!
+
+cairo_set_line_join: cr _: line_join 
+
+    <cdecl: void "cairo_set_line_join" ( Cairo::GraphicsContext int32 ) >
+    self primitiveFailed
+!
+
+cairo_set_line_width: cr _: width 
+
+    <cdecl: void "cairo_set_line_width" ( Cairo::GraphicsContext double ) >
+    self primitiveFailed
+!
+
+cairo_set_matrix: cr _: matrix 
+
+    <cdecl: void "cairo_set_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_set_miter_limit: cr _: limit 
+
+    <cdecl: void "cairo_set_miter_limit" ( Cairo::GraphicsContext double ) >
+    self primitiveFailed
+!
+
+cairo_set_operator: cr _: op 
+
+    <cdecl: void "cairo_set_operator" ( Cairo::GraphicsContext int32 ) >
+    self primitiveFailed
+!
+
+cairo_set_scaled_font: cr _: scaled_font 
+
+    <cdecl: void "cairo_set_scaled_font" ( Cairo::GraphicsContext Cairo::ScaledFont ) >
+    self primitiveFailed
+!
+
+cairo_set_source: cr _: source 
+
+    <cdecl: void "cairo_set_source" ( Cairo::GraphicsContext Cairo::Pattern ) >
+    self primitiveFailed
+!
+
+cairo_set_source_rgb: cr _: red _: green _: blue 
+
+    <cdecl: void "cairo_set_source_rgb" ( Cairo::GraphicsContext double double double ) >
+    self primitiveFailed
+!
+
+cairo_set_source_rgba: cr _: red _: green _: blue _: alpha 
+
+    <cdecl: void "cairo_set_source_rgba" ( Cairo::GraphicsContext double double double double ) >
+    self primitiveFailed
+!
+
+cairo_set_source_surface: cr _: surface _: x _: y 
+
+    <cdecl: void "cairo_set_source_surface" ( Cairo::GraphicsContext Cairo::Surface double double ) >
+    self primitiveFailed
+!
+
+cairo_set_tolerance: cr _: tolerance 
+
+    <cdecl: void "cairo_set_tolerance" ( Cairo::GraphicsContext double ) >
+    self primitiveFailed
+!
+
+cairo_set_user_data: cr _: key _: user_data _: destroy 
+
+    <cdecl: int32 "cairo_set_user_data" ( Cairo::GraphicsContext Cairo::UserDataKey voidPointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_show_glyphs: cr _: glyphs _: num_glyphs 
+
+    <cdecl: void "cairo_show_glyphs" ( Cairo::GraphicsContext Cairo::Glyph int32 ) >
+    self primitiveFailed
+!
+
+cairo_show_page: cr 
+
+    <cdecl: void "cairo_show_page" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_show_text: cr _: utf8 
+
+    <cdecl: void "cairo_show_text" ( Cairo::GraphicsContext charPointer ) >
+    self primitiveFailed
+!
+
+cairo_show_text_glyphs: cr _: utf8 _: utf8_len _: glyphs _: num_glyphs _: clusters _: num_clusters _: cluster_flags 
+
+    <cdecl: void "cairo_show_text_glyphs" ( Cairo::GraphicsContext charPointer int32 Cairo::Glyph int32 Cairo::TextCluster int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_status: cr 
+
+    <cdecl: int32 "cairo_status" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_status_to_string: status 
+
+    <cdecl: charPointer "cairo_status_to_string" ( int32 ) >
+    self primitiveFailed
+!
+
+cairo_stroke: cr 
+
+    <cdecl: void "cairo_stroke" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_stroke_extents: cr _: x1 _: y1 _: x2 _: y2 
+
+    <cdecl: void "cairo_stroke_extents" ( Cairo::GraphicsContext doublePointer doublePointer doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_stroke_preserve: cr 
+
+    <cdecl: void "cairo_stroke_preserve" ( Cairo::GraphicsContext ) >
+    self primitiveFailed
+!
+
+cairo_surface_copy_page: surface 
+
+    <cdecl: void "cairo_surface_copy_page" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_create_for_rectangle: target _: x _: y _: width _: height 
+
+    <cdecl: Cairo::Surface "cairo_surface_create_for_rectangle" ( Cairo::Surface double double double double ) >
+    self primitiveFailed
+!
+
+cairo_surface_create_observer: target _: mode 
+
+    <cdecl: Cairo::Surface "cairo_surface_create_observer" ( Cairo::Surface int32 ) >
+    self primitiveFailed
+!
+
+cairo_surface_create_similar: other _: content _: width _: height 
+
+    <cdecl: Cairo::Surface "cairo_surface_create_similar" ( Cairo::Surface int32 int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_surface_create_similar_image: other _: format _: width _: height 
+
+    <cdecl: Cairo::Surface "cairo_surface_create_similar_image" ( Cairo::Surface int32 int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_surface_destroy: surface 
+
+    <cdecl: void "cairo_surface_destroy" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_finish: surface 
+
+    <cdecl: void "cairo_surface_finish" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_flush: surface 
+
+    <cdecl: void "cairo_surface_flush" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_content: surface 
+
+    <cdecl: int32 "cairo_surface_get_content" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_device: surface 
+
+    <cdecl: Cairo::Device "cairo_surface_get_device" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_device_offset: surface _: x_offset _: y_offset 
+
+    <cdecl: void "cairo_surface_get_device_offset" ( Cairo::Surface doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_device_scale: surface _: x_scale _: y_scale 
+
+    <cdecl: void "cairo_surface_get_device_scale" ( Cairo::Surface doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_fallback_resolution: surface _: x_pixels_per_inch _: y_pixels_per_inch 
+
+    <cdecl: void "cairo_surface_get_fallback_resolution" ( Cairo::Surface doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_font_options: surface _: options 
+
+    <cdecl: void "cairo_surface_get_font_options" ( Cairo::Surface Cairo::FontOptions ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_mime_data: surface _: mime_type _: data _: length 
+
+    <cdecl: void "cairo_surface_get_mime_data" ( Cairo::Surface charPointer pointer longPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_reference_count: surface 
+
+    <cdecl: uint32 "cairo_surface_get_reference_count" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_type: surface 
+
+    <cdecl: int32 "cairo_surface_get_type" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_get_user_data: surface _: key 
+
+    <cdecl: voidPointer "cairo_surface_get_user_data" ( Cairo::Surface Cairo::UserDataKey ) >
+    self primitiveFailed
+!
+
+cairo_surface_has_show_text_glyphs: surface 
+
+    <cdecl: int32 "cairo_surface_has_show_text_glyphs" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_map_to_image: surface _: extents 
+
+    <cdecl: Cairo::Surface "cairo_surface_map_to_image" ( Cairo::Surface Cairo::RectangleInt ) >
+    self primitiveFailed
+!
+
+cairo_surface_mark_dirty: surface 
+
+    <cdecl: void "cairo_surface_mark_dirty" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_mark_dirty_rectangle: surface _: x _: y _: width _: height 
+
+    <cdecl: void "cairo_surface_mark_dirty_rectangle" ( Cairo::Surface int32 int32 int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_fill_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_fill_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_finish_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_finish_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_flush_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_flush_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_glyphs_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_glyphs_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_mask_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_mask_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_paint_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_paint_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_add_stroke_callback: abstract_surface _: func _: data 
+
+    <cdecl: int32 "cairo_surface_observer_add_stroke_callback" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_elapsed: surface 
+
+    <cdecl: double "cairo_surface_observer_elapsed" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_observer_print: surface _: write_func _: closure 
+
+    <cdecl: int32 "cairo_surface_observer_print" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_reference: surface 
+
+    <cdecl: Cairo::Surface "cairo_surface_reference" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_set_device_offset: surface _: x_offset _: y_offset 
+
+    <cdecl: void "cairo_surface_set_device_offset" ( Cairo::Surface double double ) >
+    self primitiveFailed
+!
+
+cairo_surface_set_device_scale: surface _: x_scale _: y_scale 
+
+    <cdecl: void "cairo_surface_set_device_scale" ( Cairo::Surface double double ) >
+    self primitiveFailed
+!
+
+cairo_surface_set_fallback_resolution: surface _: x_pixels_per_inch _: y_pixels_per_inch 
+
+    <cdecl: void "cairo_surface_set_fallback_resolution" ( Cairo::Surface double double ) >
+    self primitiveFailed
+!
+
+cairo_surface_set_mime_data: surface _: mime_type _: data _: length _: destroy _: closure 
+
+    <cdecl: int32 "cairo_surface_set_mime_data" ( Cairo::Surface charPointer charPointer long pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_set_user_data: surface _: key _: user_data _: destroy 
+
+    <cdecl: int32 "cairo_surface_set_user_data" ( Cairo::Surface Cairo::UserDataKey voidPointer pointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_show_page: surface 
+
+    <cdecl: void "cairo_surface_show_page" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_status: surface 
+
+    <cdecl: int32 "cairo_surface_status" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_supports_mime_type: surface _: mime_type 
+
+    <cdecl: int32 "cairo_surface_supports_mime_type" ( Cairo::Surface charPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_unmap_image: surface _: image 
+
+    <cdecl: void "cairo_surface_unmap_image" ( Cairo::Surface Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_surface_write_to_png: surface _: filename 
+
+    <cdecl: int32 "cairo_surface_write_to_png" ( Cairo::Surface charPointer ) >
+    self primitiveFailed
+!
+
+cairo_surface_write_to_png_stream: surface _: write_func _: closure 
+
+    <cdecl: int32 "cairo_surface_write_to_png_stream" ( Cairo::Surface pointer voidPointer ) >
+    self primitiveFailed
+!
+
+cairo_text_cluster_allocate: num_clusters 
+
+    <cdecl: Cairo::TextCluster "cairo_text_cluster_allocate" ( int32 ) >
+    self primitiveFailed
+!
+
+cairo_text_cluster_free: clusters 
+
+    <cdecl: void "cairo_text_cluster_free" ( Cairo::TextCluster ) >
+    self primitiveFailed
+!
+
+cairo_text_extents: cr _: utf8 _: extents 
+
+    <cdecl: void "cairo_text_extents" ( Cairo::GraphicsContext charPointer Cairo::TextExtents ) >
+    self primitiveFailed
+!
+
+cairo_text_path: cr _: utf8 
+
+    <cdecl: void "cairo_text_path" ( Cairo::GraphicsContext charPointer ) >
+    self primitiveFailed
+!
+
+cairo_toy_font_face_create: family _: slant _: weight 
+
+    <cdecl: Cairo::FontFace "cairo_toy_font_face_create" ( charPointer int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_toy_font_face_get_family: font_face 
+
+    <cdecl: charPointer "cairo_toy_font_face_get_family" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_toy_font_face_get_slant: font_face 
+
+    <cdecl: int32 "cairo_toy_font_face_get_slant" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_toy_font_face_get_weight: font_face 
+
+    <cdecl: int32 "cairo_toy_font_face_get_weight" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_transform: cr _: matrix 
+
+    <cdecl: void "cairo_transform" ( Cairo::GraphicsContext Cairo::Matrix ) >
+    self primitiveFailed
+!
+
+cairo_translate: cr _: tx _: ty 
+
+    <cdecl: void "cairo_translate" ( Cairo::GraphicsContext double double ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_create
+
+    <cdecl: Cairo::FontFace "cairo_user_font_face_create" ( ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_get_init_func: font_face 
+
+    <cdecl: pointer "cairo_user_font_face_get_init_func" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_get_render_glyph_func: font_face 
+
+    <cdecl: pointer "cairo_user_font_face_get_render_glyph_func" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_get_text_to_glyphs_func: font_face 
+
+    <cdecl: pointer "cairo_user_font_face_get_text_to_glyphs_func" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_get_unicode_to_glyph_func: font_face 
+
+    <cdecl: pointer "cairo_user_font_face_get_unicode_to_glyph_func" ( Cairo::FontFace ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_set_init_func: font_face _: init_func 
+
+    <cdecl: void "cairo_user_font_face_set_init_func" ( Cairo::FontFace pointer ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_set_render_glyph_func: font_face _: render_glyph_func 
+
+    <cdecl: void "cairo_user_font_face_set_render_glyph_func" ( Cairo::FontFace pointer ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_set_text_to_glyphs_func: font_face _: text_to_glyphs_func 
+
+    <cdecl: void "cairo_user_font_face_set_text_to_glyphs_func" ( Cairo::FontFace pointer ) >
+    self primitiveFailed
+!
+
+cairo_user_font_face_set_unicode_to_glyph_func: font_face _: unicode_to_glyph_func 
+
+    <cdecl: void "cairo_user_font_face_set_unicode_to_glyph_func" ( Cairo::FontFace pointer ) >
+    self primitiveFailed
+!
+
+cairo_user_to_device: cr _: x _: y 
+
+    <cdecl: void "cairo_user_to_device" ( Cairo::GraphicsContext doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_user_to_device_distance: cr _: dx _: dy 
+
+    <cdecl: void "cairo_user_to_device_distance" ( Cairo::GraphicsContext doublePointer doublePointer ) >
+    self primitiveFailed
+!
+
+cairo_version
+
+    <cdecl: int32 "cairo_version" ( ) >
+    self primitiveFailed
+!
+
+cairo_version_string
+
+    <cdecl: charPointer "cairo_version_string" ( ) >
+    self primitiveFailed
+!
+
+cairo_xlib_device_debug_cap_xrender_version: device _: major_version _: minor_version 
+
+    <cdecl: void "cairo_xlib_device_debug_cap_xrender_version" ( Cairo::Device int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_xlib_device_debug_get_precision: device 
+
+    <cdecl: int32 "cairo_xlib_device_debug_get_precision" ( Cairo::Device ) >
+    self primitiveFailed
+!
+
+cairo_xlib_device_debug_set_precision: device _: precision 
+
+    <cdecl: void "cairo_xlib_device_debug_set_precision" ( Cairo::Device int32 ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_create: dpy _: drawable _: visual _: width _: height 
+
+    <cdecl: Cairo::Surface "cairo_xlib_surface_create" ( pointer long pointer int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_create_for_bitmap: dpy _: bitmap _: screen _: width _: height 
+
+    <cdecl: Cairo::Surface "cairo_xlib_surface_create_for_bitmap" ( pointer long pointer int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_depth: surface 
+
+    <cdecl: int32 "cairo_xlib_surface_get_depth" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_display: surface 
+
+    <cdecl: pointer "cairo_xlib_surface_get_display" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_drawable: surface 
+
+    <cdecl: long "cairo_xlib_surface_get_drawable" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_height: surface 
+
+    <cdecl: int32 "cairo_xlib_surface_get_height" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_screen: surface 
+
+    <cdecl: pointer "cairo_xlib_surface_get_screen" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_visual: surface 
+
+    <cdecl: pointer "cairo_xlib_surface_get_visual" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_get_width: surface 
+
+    <cdecl: int32 "cairo_xlib_surface_get_width" ( Cairo::Surface ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_set_drawable: surface _: drawable _: width _: height 
+
+    <cdecl: void "cairo_xlib_surface_set_drawable" ( Cairo::Surface long int32 int32 ) >
+    self primitiveFailed
+!
+
+cairo_xlib_surface_set_size: surface _: width _: height 
+
+    <cdecl: void "cairo_xlib_surface_set_size" ( Cairo::Surface int32 int32 ) >
+    self primitiveFailed
+! !
+