summaryrefslogtreecommitdiff
path: root/pdf/pdf_jsimp_cpp.h
diff options
context:
space:
mode:
authorPaul Gardiner <paul@glidos.net>2012-05-16 12:20:00 +0100
committerPaul Gardiner <paul@glidos.net>2012-05-16 12:20:00 +0100
commit9b0edbc781b6dcb4db140d83468d4a3a305f61c5 (patch)
tree48b8a4966a15dc5a5030cdae12b7dd7535509a87 /pdf/pdf_jsimp_cpp.h
parent967f42c877cd9a732761957e1329776600505119 (diff)
downloadmupdf-9b0edbc781b6dcb4db140d83468d4a3a305f61c5.tar.xz
JavaScript: provide mechanism via which C++ js engines can fz_throw errors
Diffstat (limited to 'pdf/pdf_jsimp_cpp.h')
-rw-r--r--pdf/pdf_jsimp_cpp.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/pdf/pdf_jsimp_cpp.h b/pdf/pdf_jsimp_cpp.h
new file mode 100644
index 00000000..8b5de640
--- /dev/null
+++ b/pdf/pdf_jsimp_cpp.h
@@ -0,0 +1,18 @@
+/* C++ version of the pdf_jsimp api. C++ cannot safely call fz_throw,
+ * so C++ implementations return explicit errors in char * form. */
+
+
+fz_context *pdf_jsimp_ctx_cpp(pdf_jsimp *imp);
+char *pdf_new_jsimp_cpp(fz_context *ctx, void *jsctx, pdf_jsimp **imp);
+char *pdf_drop_jsimp_cpp(pdf_jsimp *imp);
+char *pdf_jsimp_new_type_cpp(pdf_jsimp *imp, pdf_jsimp_dtr *dtr, pdf_jsimp_type **type);
+char *pdf_jsimp_drop_type_cpp(pdf_jsimp *imp, pdf_jsimp_type *type);
+char *pdf_jsimp_addmethod_cpp(pdf_jsimp *imp, pdf_jsimp_type *type, char *name, pdf_jsimp_method *meth);
+char *pdf_jsimp_addproperty_cpp(pdf_jsimp *imp, pdf_jsimp_type *type, char *name, pdf_jsimp_getter *get, pdf_jsimp_setter *set);
+char *pdf_jsimp_set_global_type_cpp(pdf_jsimp *imp, pdf_jsimp_type *type);
+char *pdf_jsimp_new_obj_cpp(pdf_jsimp *imp, pdf_jsimp_type *type, void *natobj, pdf_jsimp_obj **obj);
+char *pdf_jsimp_drop_obj_cpp(pdf_jsimp *imp, pdf_jsimp_obj *obj);
+char *pdf_jsimp_fromString_cpp(pdf_jsimp *imp, char *str, pdf_jsimp_obj **obj);
+char *pdf_jsimp_toString_cpp(pdf_jsimp *imp, pdf_jsimp_obj *obj, char **str);
+char *pdf_jsimp_execute_cpp(pdf_jsimp *imp, char *code);
+char *pdf_jsimp_execute_count_cpp(pdf_jsimp *imp, char *code, int count);