+++ /dev/null
-(***********************************************************************)
-(* *)
-(* TAToo *)
-(* *)
-(* Kim Nguyen, LRI UMR8623 *)
-(* Université Paris-Sud & CNRS *)
-(* *)
-(* Copyright 2010-2013 Université Paris-Sud and Centre National de la *)
-(* Recherche Scientifique. All rights reserved. This file is *)
-(* distributed under the terms of the GNU Lesser General Public *)
-(* License, with the special exception on linking described in file *)
-(* ../LICENSE. *)
-(* *)
-(***********************************************************************)
-
-(*
- Time-stamp: <Last modified on 2013-03-15 18:18:23 CET by Kim Nguyen>
-*)
-
-type predicate =
- First_child
- | Next_sibling
- | Parent
- | Previous_sibling
- | Stay
- | Is_first_child
- | Is_next_sibling
- | Is of Tree.Common.NodeKind.t
- | Has_first_child
- | Has_next_sibling
-
-val is_move : predicate -> bool
-
-type atom = predicate * bool * State.t
-
-module Atom : Formula.ATOM with type data = atom
-
-module SFormula :
- sig
- include module type of Formula.Make(Atom)
- val mk_atom : predicate -> bool -> State.t -> t
- val mk_kind : Tree.Common.NodeKind.t -> t
- val has_first_child : t
- val has_next_sibling : t
- val is_first_child : t
- val is_next_sibling : t
- val is_attribute : t
- val is_element : t
- val is_processing_instruction : t
- val is_comment : t
- val first_child : State.t -> t
- val next_sibling : State.t -> t
- val parent : State.t -> t
- val previous_sibling : State.t -> t
- val stay : State.t -> t
- val get_states : t -> StateSet.t
- end
-
-
-module Transition : Utils.Hcons.S with
- type data = State.t * Utils.QNameSet.t * SFormula.t
-
-module TransList : sig
- include Utils.Hlist.S with type elt = Transition.t
- val print : Format.formatter -> ?sep:string -> t -> unit
-end
-
-
-type t = private {
- id : Utils.Uid.t;
- mutable states : StateSet.t;
- mutable selection_states: StateSet.t;
- transitions: (State.t, (Utils.QNameSet.t*SFormula.t) list) Hashtbl.t;
- mutable cache2 : TransList.t Utils.Cache.N2.t;
- mutable cache6 : (TransList.t*StateSet.t) Utils.Cache.N6.t;
-}
-
-
-
-val create : StateSet.t -> StateSet.t -> t
-val reset : t -> unit
-val get_trans : t -> Utils.QNameSet.elt -> StateSet.t -> TransList.t
-
-val eval_trans : t -> TransList.t
- -> StateSet.t -> StateSet.t -> StateSet.t -> StateSet.t
- -> bool -> bool -> bool -> bool -> Tree.Common.NodeKind.t
- -> TransList.t*StateSet.t
-
-val add_trans : t -> State.t -> Utils.QNameSet.t -> SFormula.t -> unit
-val print : Format.formatter -> t -> unit
-val complete_transitions : t -> unit
-val cleanup_states : t -> unit
-val normalize_negations : t -> unit