X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=OCamlDriver.cpp;h=e20a7491da3c3540f5d3d88d03f54064dfeabdd2;hb=5b4679e20761058f1e04c123da52631c0dd265cc;hp=e3b5f445c26efb890aac5c3e8c3932cdc7da6e86;hpb=7dea5fd8bedede27d4d601f85630a249bfab420b;p=SXSI%2Fxpathcomp.git diff --git a/OCamlDriver.cpp b/OCamlDriver.cpp index e3b5f44..e20a749 100644 --- a/OCamlDriver.cpp +++ b/OCamlDriver.cpp @@ -211,6 +211,25 @@ extern "C" CAMLprim value caml_xml_tree_is_leaf(value tree, value id){ CAMLreturn(Val_bool (XMLTREE(tree)->IsLeaf(TREENODEVAL(id)))); } +extern "C" CAMLprim value caml_xml_tree_tagged_desc(value tree, value id, value tag){ + CAMLparam3(tree,id,tag); + CAMLreturn(Val_int (XMLTREE(tree)->TaggedDesc(TREENODEVAL(id),(TagType) Int_val(tag)))); +} + +extern "C" CAMLprim value caml_xml_tree_tagged_next(value tree, value id, value tag){ + CAMLparam3(tree,id,tag); + CAMLreturn(Val_int (XMLTREE(tree)->TaggedNext(TREENODEVAL(id),(TagType) Int_val(tag)))); +} + + + + +extern "C" CAMLprim value caml_xml_tree_tagged_foll(value tree, value id, value tag){ + CAMLparam3(tree,id,tag); + CAMLreturn(Val_int (XMLTREE(tree)->TaggedFoll(TREENODEVAL(id),(TagType) Int_val(tag)))); +} + + extern "C" CAMLprim value caml_xml_tree_next_sibling(value tree, value id){ CAMLparam2(tree,id); CAMLreturn(Val_int (XMLTREE(tree)->NextSibling(TREENODEVAL(id)))); @@ -255,6 +274,12 @@ extern "C" CAMLprim value caml_xml_tree_tag_id(value tree,value id){ CAMLreturn (Val_int(XMLTREE(tree)->Tag(TREENODEVAL(id)))); } +extern "C" CAMLprim value caml_xml_tree_subtree_tags(value tree,value id,value tag){ + CAMLparam3(tree,id,tag); + CAMLreturn (Val_int(XMLTREE(tree)->SubtreeTags(TREENODEVAL(id),Int_val(tag)))); +} + + extern "C" CAMLprim value caml_xml_tree_register_tag(value tree,value str){ CAMLparam2(tree,str); CAMLlocal1(id);