Module Code_util_materialize

module Code_util_materialize: sig .. end

type sequence_index = int 
type restore_function = Physical_value.dom_tuple -> unit 
val export_input_tuple_as_tuple_cursor : Code_selection_context.code_selection_context ->
Xquery_physical_type_ast.physical_tuple_type ->
Physical_value.tuple_unit Cursor.cursor -> Physical_value.tuple Cursor.cursor
val import_tuple_cursor_as_input_tuple : Code_selection_context.code_selection_context ->
Xquery_physical_type_ast.physical_tuple_type ->
Physical_value.tuple Cursor.cursor -> Physical_value.tuple_unit Cursor.cursor
type array_materialize_fun = Algebra_type.eval_fun ->
Execution_context.algebra_context ->
Physical_value.tuple_unit Cursor.cursor -> Physical_value.dom_table
val materialize_cursor_to_dom_value_array : Code_selection_context.code_selection_context ->
Xquery_algebra_ast.free_variable_desc ->
unit ->
array_materialize_fun *
restore_function * Xquery_common_ast.cvname array
type hash_materialize_fun = Algebra_type.eval_fun ->
Execution_context.algebra_context ->
Physical_value.dom_table -> int Dm_atomic.AtomicValueHash.t
val materialize_array_to_hash : Code_selection_context.code_selection_context ->
Xquery_algebra_ast.free_variable_desc ->
restore_function ->
Code_util_predicates.predicate_branch * Namespace_context.nsenv ->
hash_materialize_fun *
restore_function * Xquery_common_ast.cvname array
type sort_array_materialize_fun = Algebra_type.eval_fun ->
Execution_context.algebra_context ->
Physical_value.dom_table -> Code_util_ridlist.rid Dm_atomic_btree.btree
val materialize_array_to_sorted_array_index : Code_selection_context.code_selection_context ->
Xquery_algebra_ast.free_variable_desc ->
restore_function ->
Code_util_predicates.predicate_branch * Namespace_context.nsenv ->
sort_array_materialize_fun
val build_materialize_table_code : ('a, 'b) Xquery_algebra_ast.aalgop_expr ->
Code_selection_context.code_selection_context ->
Algebra_type.eval_fun ->
Execution_context.algebra_context ->
Physical_value.tuple_unit Cursor.cursor ->
Physical_value.tuple_unit Cursor.cursor
val annotate_materialization : Code_selection_context.code_selection_context ->
Algebra_type.algop_expr -> unit
val should_materialize : Algebra_type.algop_expr -> bool
val produces_a_table : Algebra_type.algop_expr -> bool