Module Code_selection_context

module Code_selection_context: sig .. end

type code_selection_context 
val default_code_selection_context : Norm_context.norm_context -> code_selection_context
val enter_statement_context : code_selection_context ->
code_selection_context
val exit_statement_context : code_selection_context -> unit
val enter_function_context : code_selection_context ->
Xquery_common_ast.cfname_arity ->
Namespace_names.rqname array -> code_selection_context
val exit_function_context : code_selection_context ->
Xquery_common_ast.cfname_arity -> unit
val enter_closure_context : code_selection_context ->
Namespace_names.rqname list ->
Namespace_names.rqname list -> code_selection_context
val exit_closure_context : code_selection_context -> unit
val enter_prolog_context : code_selection_context ->
code_selection_context
val exit_prolog_context : code_selection_context -> unit
val enter_scope : code_selection_context ->
code_selection_context
val exit_scope : bool ->
code_selection_context ->
code_selection_context ->
code_selection_context
val restore_variables : code_selection_context ->
code_selection_context ->
code_selection_context
val get_in_remote_execute_operator : code_selection_context -> bool
val set_in_remote_execute_operator : code_selection_context -> bool -> unit
val store_annotation : code_selection_context ->
Xquery_algebra_ast.free_variable_desc option ->
code_selection_context
val store_global_annotation : code_selection_context ->
Xquery_algebra_ast.free_variable_desc option ->
code_selection_context
val retrieve_annotation : string ->
code_selection_context ->
Xquery_algebra_ast.free_variable_desc
val retrieve_global_annotation : code_selection_context ->
Xquery_algebra_ast.free_variable_desc
val add_variable_to_current_context : code_selection_context ->
Xquery_common_ast.cvname -> code_selection_context
val add_variable_with_ref : code_selection_context ->
Xquery_common_ast.cvname ->
Variable_context_manager.variable_ref ->
code_selection_context
val get_variable_reference : code_selection_context ->
Xquery_common_ast.cvname -> Variable_context_manager.variable_ref
val add_tuple_reference : code_selection_context ->
Xquery_common_ast.cvname -> code_selection_context
val get_tuple_reference : code_selection_context ->
Xquery_common_ast.cvname -> Tuple_context_manager.tuple_ref
val get_input_tuple_fields : code_selection_context ->
Xquery_common_ast.cvname list
val cxschema_from_code_selection_context : code_selection_context ->
Xquery_type_core_ast.cxschema
val compile_context_from_code_selection_context : code_selection_context ->
Logical_algebra_types.logical_compile_context
val replace_compile_context_in_code_selection_context : Algebra_type.alg_compile_context ->
code_selection_context ->
code_selection_context
val annotated_compile_context_from_code_selection_context : code_selection_context ->
Algebra_type.alg_compile_context
val static_context_from_code_selection_context : code_selection_context ->
Typing_context.static_context
val code_type_context_from_code_selection_context : code_selection_context ->
Code_typing_context.code_type_context
val replace_code_type_context_in_code_selection_context : Code_typing_context.code_type_context ->
code_selection_context ->
code_selection_context
val add_external_variable_value : code_selection_context ->
Xquery_common_ast.cvname ->
Physical_value.item list -> code_selection_context
val declare_external_variable : code_selection_context ->
Xquery_common_ast.cvname -> code_selection_context
val get_external_variable_fn_value : code_selection_context ->
Xquery_common_ast.cvname -> (unit -> Physical_value.item list) Pervasives.ref
val add_imported_variable_context : code_selection_context ->
Xquery_common_ast.cvname ->
code_selection_context -> unit
val get_imported_variable_context : code_selection_context ->
Xquery_common_ast.cvname -> code_selection_context
val add_imported_function_context : code_selection_context ->
Xquery_common_ast.cfname_arity ->
code_selection_context -> unit
val get_imported_function_context : code_selection_context ->
Xquery_common_ast.cfname_arity ->
code_selection_context
val build_current_insert_code : code_selection_context ->
Xquery_common_ast.cvname -> Physical_value.xml_value -> unit
val build_current_assign_code : code_selection_context ->
Xquery_common_ast.cvname ->
(unit -> Physical_value.xml_value) -> unit -> Physical_value.xml_value
val build_current_retrieve_code : code_selection_context ->
Xquery_common_ast.cvname -> unit -> Physical_value.xml_value
val build_retrieve_tuple_code : code_selection_context ->
Xquery_common_ast.crname -> unit -> Physical_value.xml_value
val build_retrieve_dom_tuple_code : code_selection_context ->
Xquery_common_ast.crname -> unit -> Physical_value.dom_value
val build_create_tuple_code : code_selection_context ->
Xquery_common_ast.crname -> Physical_value.xml_value -> unit
val build_create_tuple_code_unsafe : code_selection_context ->
Xquery_common_ast.crname -> Physical_value.xml_value -> unit
val build_create_dom_tuple_code : code_selection_context ->
Xquery_common_ast.crname -> Physical_value.dom_value -> unit
val build_create_dom_tuple_code_unsafe : code_selection_context ->
Xquery_common_ast.crname -> Physical_value.dom_value -> unit
type cs_function_code = {
   parameter_insertion_code : (Physical_value.xml_value -> unit) array;
   entrance_code : unit -> unit;
   exit_code : unit -> unit;
}
val build_function_code : code_selection_context ->
Xquery_common_ast.cfname_arity ->
Xquery_common_ast.cvname array -> cs_function_code
val copy_code_selection_context : code_selection_context ->
code_selection_context
type code_selection_function = code_selection_context ->
Algebra_type.algop_expr -> code_selection_context
val create_new_name_index : code_selection_context ->
Namespace_symbols.relem_symbol ->
code_selection_context
val get_name_index : code_selection_context ->
Namespace_symbols.relem_symbol -> Physical_name_index.name_index option
val get_name_index_handler : code_selection_context ->
Namespace_symbols.relem_symbol ->
Physical_name_index.name_index_handler option
val get_all_name_indices : code_selection_context ->
Physical_name_index.name_indices
val get_all_name_indices_handler : code_selection_context ->
Physical_name_index.name_indices_handler