diff options
author | Olivier Andrieu <oandrieu@gmail.com> | 2004-02-27 23:05:28 +0000 |
---|---|---|
committer | Hezekiah M. Carty <hcarty@atmos.umd.edu> | 2009-06-18 13:54:40 -0400 |
commit | a329ec7eed9d37138cbc2e1047b8ef4a9be20130 (patch) | |
tree | 5091bb02dc0b2fc8da8b85dd33198b1dce464480 | |
parent | d2424bce677312dcc39205e4cbd545d3a9bf6a8a (diff) |
use an Unsupported macro for unavailable functionscairo-ocaml-before-drop-oo-api
-rw-r--r-- | src/ml_cairo.c | 18 | ||||
-rw-r--r-- | src/ml_cairo_lablgtk.c | 9 | ||||
-rw-r--r-- | src/ml_cairo_wrappers.h | 3 |
3 files changed, 9 insertions, 21 deletions
diff --git a/src/ml_cairo.c b/src/ml_cairo.c index c03cac1..0972c15 100644 --- a/src/ml_cairo.c +++ b/src/ml_cairo.c @@ -72,11 +72,7 @@ ml_cairo_set_target_ps(value v_cr, value v_file, value v_width_inches, return Val_unit; } #else -CAMLprim value -ml_cairo_set_target_ps(value v_cr, value v_file, value v_width_inches, - value v_height_inches, value v_x_pixels_per_inch, - value v_y_pixels_per_inch) -{ failwith("Cairo library does not support this backend") ; return Val_unit; } +Unsupported(ml_cairo_set_target_ps) #endif /* CAIRO_HAS_PS_SURFACE */ ML_bc6(cairo_set_target_ps) @@ -932,9 +928,7 @@ ml_cairo_image_surface_create_for_data(value img) #ifdef CAIRO_HAS_PS_SURFACE ML_5(cairo_ps_surface_create, FILE_val, Double_val, Double_val, Double_val, Double_val, Val_cairo_surface_t) #else -CAMLprim value -ml_cairo_ps_surface_create(value v1, value v2, value v3, value v4, value v5) -{ failwith("Cairo library does not support this backend") ; return Val_unit; } +Unsupported(ml_cairo_ps_surface_create) #endif /* CAIRO_HAS_PS_SURFACE */ ML_0(cairo_matrix_create, Val_cairo_matrix_t) @@ -1031,10 +1025,6 @@ ml_cairo_set_target_png(value v_cr, value v_file, value v_format, } ML_4(cairo_png_surface_create, FILE_val, cairo_format_t_val, Double_val, Double_val, Val_cairo_surface_t) #else -CAMLprim value -ml_cairo_set_target_png(value v_cr, value v_file, value v_format, - value v_width, value v_height) -{ failwith("Cairo library does not support this backend") ; return Val_unit; } -ml_cairo_png_surface_create(value v1, value v2, value v3, value v4, value v5) -{ failwith("Cairo library does not support this backend") ; return Val_unit; } +Unsupported(ml_cairo_set_target_png) +Unsupported(ml_cairo_png_surface_create) #endif /* CAIRO_HAS_PNG_SURFACE */ diff --git a/src/ml_cairo_lablgtk.c b/src/ml_cairo_lablgtk.c index b4aebbf..6929e57 100644 --- a/src/ml_cairo_lablgtk.c +++ b/src/ml_cairo_lablgtk.c @@ -116,12 +116,7 @@ cairo_lablgtk_set_target_drawable(value cr, value d) #else -CAMLprim value -cairo_lablgtk_surface_create_for_drawable(value d, value fmt) -{ failwith("Cairo library does not support this backend") ; return Val_unit; } - -CAMLprim value -cairo_lablgtk_set_target_drawable(value cr, value d) -{ failwith("Cairo library does not support this backend") ; return Val_unit; } +Unsupported(cairo_lablgtk_surface_create_for_drawable) +Unsupported(cairo_lablgtk_set_target_drawable) #endif /* CAIRO_HAS_XLIB_SURFACE */ diff --git a/src/ml_cairo_wrappers.h b/src/ml_cairo_wrappers.h index ca60a27..036c72d 100644 --- a/src/ml_cairo_wrappers.h +++ b/src/ml_cairo_wrappers.h @@ -27,6 +27,9 @@ static inline value Val_ptr(void *p) #define Ignore(x) #define Unit(x) ((x), Val_unit) +#define Unsupported(fun) \ +CAMLprim value fun() { failwith("Unsupported backend"); return Val_unit; } + #define ML_0(cname, conv) \ CAMLprim value ml_##cname (value unit) { return conv (cname ()); } #define ML_1(cname, conv1, conv) \ |