]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/lablgtk_gtkmathview/lablgtk-20001129_gtkmathview-0.2.1/minidom/minidom.ml
This commit was manufactured by cvs2svn to create branch 'start'.
[helm.git] / helm / DEVEL / lablgtk_gtkmathview / lablgtk-20001129_gtkmathview-0.2.1 / minidom / minidom.ml
diff --git a/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20001129_gtkmathview-0.2.1/minidom/minidom.ml b/helm/DEVEL/lablgtk_gtkmathview/lablgtk-20001129_gtkmathview-0.2.1/minidom/minidom.ml
new file mode 100644 (file)
index 0000000..31e677b
--- /dev/null
@@ -0,0 +1,61 @@
+
+type mDOMString
+type mDOMDoc
+type mDOMNode
+type mDOMAttr
+type mDOMEntity
+
+external string_of_mDOMString : mDOMString -> string = "ml_string_of_mDOMString"
+external mDOMString_of_string : string -> mDOMString = "ml_mDOMString_of_string"
+external mDOMString_eq : string -> string -> bool = "ml_mDOMString_eq"
+
+external doc_load : string -> mDOMDoc = "ml_doc_load"
+external doc_unload : mDOMDoc -> unit = "ml_doc_unload"
+
+external doc_new : mDOMString -> mDOMDoc = "ml_doc_new"
+external doc_get_root_node : mDOMDoc -> mDOMNode = "ml_doc_get_root_node"
+
+external doc_add_entity : mDOMDoc -> mDOMString -> mDOMString -> mDOMEntity = "ml_doc_add_entity"
+external doc_get_entity : mDOMDoc -> mDOMString -> mDOMEntity option = "ml_doc_get_entity"
+external doc_get_predefined_entity : mDOMDoc -> mDOMString -> mDOMEntity option = "ml_doc_get_predefined_entity"
+external entity_get_content : mDOMEntity -> mDOMString = "ml_entity_get_content"
+
+external node_is_text  : mDOMNode -> bool = "ml_node_is_text"
+external node_is_element : mDOMNode -> bool = "ml_node_is_element"
+external node_is_blank : mDOMNode -> bool = "ml_node_is_blank"
+external node_is_entity_ref : mDOMNode -> bool = "ml_node_is_entity_ref"
+external node_get_type : mDOMNode -> int = "ml_node_get_type"
+external node_get_name : mDOMNode -> mDOMString option = "ml_node_get_name"
+external node_get_ns_uri : mDOMNode -> mDOMString option = "ml_node_get_ns_uri"
+external node_get_attribute : mDOMNode -> mDOMString -> mDOMString option = "ml_node_get_attribute"
+external node_get_attribute_ns : mDOMNode -> mDOMString -> mDOMString -> mDOMString option = "ml_node_get_attribute_ns"
+external node_get_content : mDOMNode -> mDOMString option = "ml_node_get_content"
+external node_get_parent : mDOMNode -> mDOMNode option = "ml_node_get_parent"
+external node_get_prev_sibling : mDOMNode -> mDOMNode option = "ml_node_get_prev_sibling"
+external node_get_next_sibling : mDOMNode -> mDOMNode option = "ml_node_get_next_sibling"
+external node_get_first_child : mDOMNode -> mDOMNode option = "ml_node_get_first_child"
+external node_get_first_attribute : mDOMNode -> mDOMAttr option = "ml_node_get_first_attribute"
+external node_is_first : mDOMNode -> bool = "ml_node_is_first"
+external node_is_last : mDOMNode -> bool = "ml_node_is_last"
+
+external attr_get_name : mDOMAttr -> mDOMString option = "ml_attr_get_name"
+external attr_get_ns_uri : mDOMAttr -> mDOMString option = "ml_attr_get_ns_uri"
+external attr_get_value : mDOMAttr -> mDOMString option = "ml_attr_get_value"
+external attr_get_prev_sibling : mDOMAttr -> mDOMAttr option = "ml_attr_get_prev_sibling"
+external attr_get_next_sibling : mDOMAttr -> mDOMAttr option = "ml_attr_get_next_sibling"
+external attr_get_parent : mDOMAttr -> mDOMNode option = "ml_attr_get_parent"
+
+let rec node_list_of_node_first =
+  function None -> []
+  |        Some node -> node :: (node_list_of_node_first (node_get_next_sibling node))
+
+let rec attr_list_of_attr_first =
+  function None -> []
+  |        Some attr -> attr :: (attr_list_of_attr_first (attr_get_next_sibling attr))
+  
+let node_get_children node =
+  (node_list_of_node_first (node_get_first_child node))
+
+let node_get_attributes node =
+  (attr_list_of_attr_first (node_get_first_attribute node))
+