sig
type state_number = int
type state = Optimization_rules_sbdo_automaton.state_number * (int * int)
type action_needed = Nothing | Docorder | Distinct | DistinctDocorder
type axis_number = int
val axis_child : Optimization_rules_sbdo_automaton.axis_number
val axis_descendant : Optimization_rules_sbdo_automaton.axis_number
val axis_descendant_or_self : Optimization_rules_sbdo_automaton.axis_number
val axis_following : Optimization_rules_sbdo_automaton.axis_number
val axis_following_sibling : Optimization_rules_sbdo_automaton.axis_number
val axis_parent : Optimization_rules_sbdo_automaton.axis_number
val axis_ancestor : Optimization_rules_sbdo_automaton.axis_number
val axis_ancestor_or_self : Optimization_rules_sbdo_automaton.axis_number
val axis_preceding : Optimization_rules_sbdo_automaton.axis_number
val axis_preceding_sibling : Optimization_rules_sbdo_automaton.axis_number
val axis_self : Optimization_rules_sbdo_automaton.axis_number
val axis_adapter :
Xquery_common_ast.axis -> Optimization_rules_sbdo_automaton.axis_number
val do_transition :
Processing_context.sbdo_kind ->
Optimization_rules_sbdo_automaton.state ->
Optimization_rules_sbdo_automaton.axis_number ->
bool ->
Optimization_rules_sbdo_automaton.state *
Optimization_rules_sbdo_automaton.action_needed
val init_state :
Processing_context.sbdo_kind -> Optimization_rules_sbdo_automaton.state
val sink_state :
Processing_context.sbdo_kind -> Optimization_rules_sbdo_automaton.state
val undefined_state :
Processing_context.sbdo_kind -> Optimization_rules_sbdo_automaton.state
val needs_sorting : Optimization_rules_sbdo_automaton.action_needed -> bool
val needs_dupelim : Optimization_rules_sbdo_automaton.action_needed -> bool
val print_action :
Optimization_rules_sbdo_automaton.action_needed -> string
val print_state : Optimization_rules_sbdo_automaton.state -> string
end