sig
type op_expr_type =
RegularOp of Algebra_type.algop_expr
| Fs_untyped_to_any
| Invalid_Predicate_Branch
type predicate_branch
val mk_predicate_branch :
Algebra_type.algop_expr option ->
Code_util_predicates.op_expr_type ->
(Physical_value.xml_value -> unit) option ->
Code_util_predicates.predicate_branch
val invalid_predicate_branch : Code_util_predicates.predicate_branch
val is_fs_untyped_to_any_predicate_branch :
Code_util_predicates.predicate_branch -> bool
val eval_predicate_desc :
Algebra_type.eval_fun ->
Execution_context.algebra_context ->
Algebra_type.algop_expr array ->
Xquery_algebra_ast.predicate_desc -> bool
val eval_predicate_desc_to_rid_list :
('a -> Code_util_ridlist.rid_list) ->
'a array ->
Xquery_algebra_ast.predicate_desc -> Code_util_ridlist.rid_list
val evaluate_predicate_branch :
Code_util_predicates.predicate_branch ->
Algebra_type.eval_fun ->
Execution_context.algebra_context ->
Namespace_context.nsenv -> Dm_atomic.atomicValue list
type supported_predicates
type supported_scans =
Value_Equality
| Greater_Than
| Greater_Than_or_Equal
| Less_Than
| Less_Than_or_Equal
| Invalid_Scan
val switch_predicate :
Code_util_predicates.supported_predicates ->
Code_util_predicates.supported_predicates
val supported_predicate_supported_scans :
Code_util_predicates.supported_predicates ->
Code_util_predicates.supported_scans
val predicate_type :
Algebra_type.algop_expr -> Code_util_predicates.supported_predicates
val needed_types :
Algebra_type.algop_expr ->
Code_util_predicates.supported_predicates -> Datatypes.atomic_type list
val predicate_invalid : Code_util_predicates.supported_predicates
type predicate_functions =
(Code_util_predicates.predicate_branch *
Code_util_predicates.predicate_branch *
Code_util_predicates.supported_scans)
array
end