projects
/
SXSI
/
xpathcomp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
.
[SXSI/xpathcomp.git]
/
src
/
tag.ml
diff --git
a/src/tag.ml
b/src/tag.ml
index
6c88089
..
ce1979c
100644
(file)
--- a/
src/tag.ml
+++ b/
src/tag.ml
@@
-10,6
+10,18
@@
type t = int
type pool
type t = int
type pool
+type operations = {
+ tag : pool -> string -> t;
+ to_string : pool -> t ->string;
+ nullt : pool -> t;
+ translate : pool -> t -> t
+}
+
+let dummy_fun =function _ -> failwith "Tag.ml Uninitialized tag structure"
+
+
+
+
external null_pool : unit -> pool = "caml_xml_tree_nullt"
external null_tag : unit -> t = "caml_xml_tree_nullt"
external register_tag : pool -> string -> t = "caml_xml_tree_register_tag"
external null_pool : unit -> pool = "caml_xml_tree_nullt"
external null_tag : unit -> t = "caml_xml_tree_nullt"
external register_tag : pool -> string -> t = "caml_xml_tree_register_tag"
@@
-55,6
+67,17
@@
let to_string t =
else if t == nullt then "<!NIL!>"
else tag_name (get_pool()) t
else if t == nullt then "<!NIL!>"
else tag_name (get_pool()) t
+
+let xml_operations = {
+ tag = (fun _ x -> tag x);
+ to_string = (fun _ x -> to_string x);
+ nullt = (fun _ -> nullt);
+ translate = (fun _ x -> x);
+}
+
+
+
+
let dump_tags () =
Format.eprintf "Tags are:\n";
let doc = get_pool() in
let dump_tags () =
Format.eprintf "Tags are:\n";
let doc = get_pool() in