sig
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 ->
Code_util_materialize.array_materialize_fun *
Code_util_materialize.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 ->
Code_util_materialize.restore_function ->
Code_util_predicates.predicate_branch * Namespace_context.nsenv ->
Code_util_materialize.hash_materialize_fun *
Code_util_materialize.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 ->
Code_util_materialize.restore_function ->
Code_util_predicates.predicate_branch * Namespace_context.nsenv ->
Code_util_materialize.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
end