projects
/
SXSI
/
xpathcomp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added benchmarking funtions,
[SXSI/xpathcomp.git]
/
ata.mli
diff --git
a/ata.mli
b/ata.mli
index
3152112
..
13e8431
100644
(file)
--- a/
ata.mli
+++ b/
ata.mli
@@
-4,7
+4,7
@@
sig
include Sigs.T with type t = int
val make : unit -> t
end
include Sigs.T with type t = int
val make : unit -> t
end
-
+type merge_conf = NO | ONLY1 | ONLY2 | ONLY12 | MARK | MARK1 | MARK2 | MARK12
module StateSet :
sig
include Ptset.S with type elt = int
module StateSet :
sig
include Ptset.S with type elt = int
@@
-52,7
+52,7
@@
module Formula :
end
module Transition :
sig
end
module Transition :
sig
- type node = State.t * bool * Formula.t * bool
+ type node = State.t *
TagSet.t *
bool * Formula.t * bool
type data = node
type t
val make : data -> t
type data = node
type t
val make : data -> t
@@
-84,18
+84,31
@@
val dump : Format.formatter -> 'a t -> unit
module type ResultSet =
sig
type t
module type ResultSet =
sig
type t
+ type elt = [`Tree] Tree.node
val empty : t
val empty : t
- val cons :
Tree.
t -> t -> t
+ val cons :
el
t -> t -> t
val concat : t -> t -> t
val concat : t -> t -> t
- val iter : (
Tree.
t -> unit) -> t -> unit
- val fold : (
Tree.
t -> 'a -> 'a) -> t -> 'a -> 'a
- val map : (
Tree.t -> Tree.
t) -> t -> t
+ val iter : (
el
t -> unit) -> t -> unit
+ val fold : (
el
t -> 'a -> 'a) -> t -> 'a -> 'a
+ val map : (
elt -> el
t) -> t -> t
val length : t -> int
val length : t -> int
+ val merge : merge_conf -> elt -> t -> t -> t
+ val mk_quick_tag_loop : (elt -> elt -> 'a*t array) -> 'a -> int -> Tree.t -> Tag.t -> (elt -> elt -> 'a*t array)
+ val mk_quick_star_loop : (elt -> elt -> 'a*t array) -> 'a -> int -> Tree.t -> (elt -> elt -> 'a*t array)
end
module IdSet : ResultSet
end
module IdSet : ResultSet
+module GResult (Doc : sig val doc : Tree.t end) : ResultSet
val top_down_count : 'a t -> Tree.t -> int
val top_down : 'a t -> Tree.t -> IdSet.t
val bottom_up_count :
'a t -> Tree.t -> [> `CONTAINS of 'b | `TAG of Tag.t ] -> int
val top_down_count : 'a t -> Tree.t -> int
val top_down : 'a t -> Tree.t -> IdSet.t
val bottom_up_count :
'a t -> Tree.t -> [> `CONTAINS of 'b | `TAG of Tag.t ] -> int
+val bottom_up :
+ 'a t -> Tree.t -> [> `CONTAINS of 'b | `TAG of Tag.t ] -> IdSet.t
+
+module Test (Doc : sig val doc : Tree.t end ) :
+sig
+ module Results : ResultSet
+ val top_down : 'a t -> Tree.t -> Results.t
+end