Module Code_util_join

module Code_util_join: sig .. end

type join_kind = 
| NestedLoopJoin
| HashJoin
| SortJoin
val get_join_kind : Algebra_type.algop_expr -> join_kind
val build_sort_cond : Code_selection_context.code_selection_function ->
Code_selection_context.code_selection_context ->
Algebra_type.algop_expr -> Code_util_predicates.predicate_functions
val build_hash_cond : Code_selection_context.code_selection_function ->
Code_selection_context.code_selection_context ->
Algebra_type.algop_expr -> Code_util_predicates.predicate_functions
type outer_kind = 
| StandardJoin
| OuterJoin of Xquery_common_ast.crname
type null_functions = bool * (unit -> unit) * (unit -> unit) * Physical_value.dom_value array 
val get_null_functions : Code_selection_context.code_selection_context ->
outer_kind ->
Xquery_common_ast.crname array -> null_functions
val select_physical_op : outer_kind ->
Algebra_type.algop_expr -> Xquery_physical_algebra_ast.physop_expr_name