Module Optimization_util

module Optimization_util: sig .. end

val replace_tuple_field_name : Namespace_names.rqname ->
Namespace_names.rqname ->
bool ->
Logical_algebra_types.logical_algop_expr ->
Logical_algebra_types.logical_algop_expr * bool
val replace_tuple_name : Logical_algebra_types.logical_compile_context ->
Namespace_names.rqname ->
Namespace_names.rqname ->
Logical_algebra_types.logical_algop_expr ->
Logical_algebra_types.logical_algop_expr * bool
val is_update : Logical_algebra_types.logical_algop_expr -> bool
val contain_updates : Logical_algebra_types.logical_algop_expr -> bool
val count_tuple_field_access : Logical_algebra_types.logical_algop_expr ->
(Xquery_common_ast.crname * int) list
val wrap_sep_sequence : ('a, 'b) Compile_context.compile_context ->
Logical_algebra_types.logical_algop_expr ->
Xquery_common_ast.crname * Logical_algebra_types.logical_algop_expr
val wrap_map_index_name : Xquery_common_ast.crname ->
Logical_algebra_types.logical_algop_expr ->
Logical_algebra_types.logical_algop_expr
val wrap_map_index : ('a, 'b) Compile_context.compile_context ->
Logical_algebra_types.logical_algop_expr ->
Xquery_common_ast.crname * Logical_algebra_types.logical_algop_expr
val wrap_map_null_named : Xquery_common_ast.crname ->
Logical_algebra_types.logical_algop_expr ->
Logical_algebra_types.logical_algop_expr
val wrap_map_null : ('a, 'b) Compile_context.compile_context ->
Logical_algebra_types.logical_algop_expr ->
Xquery_common_ast.crname * Logical_algebra_types.logical_algop_expr
val generic_snap_free_wrapper : (Logical_algebra_types.logical_compile_context ->
Logical_algebra_types.logical_algop_expr ->
Logical_algebra_types.logical_algop_expr * bool) ->
bool Pervasives.ref ->
Logical_algebra_types.logical_compile_context ->
Logical_algebra_types.logical_algop_expr ->
((unit, Alg_path_struct.path_annotation) Xquery_algebra_ast.aalgop_expr *
Optimization_walker.sub_expr_kind * int)
option ->
Logical_algebra_types.logical_algop_expr ->
Logical_algebra_types.logical_algop_expr