Module Xquery_core_ast

module Xquery_core_ast: sig .. end

type celement_test = 
| CSchemaElementTest of Xquery_common_ast.cename
| CElementTest of (Xquery_common_ast.cename * Xquery_common_ast.ctname option) option
type cattribute_test = 
| CSchemaAttributeTest of Xquery_common_ast.caname
| CAttributeTest of (Xquery_common_ast.caname * Xquery_common_ast.ctname option) option
type ckind_test = 
| CDocumentKind of celement_test option
| CElementKind of celement_test
| CAttributeKind of cattribute_test
| CPIKind of string option
| CCommentKind
| CTextKind
| CAnyKind
type citemtype = 
| CITKindTest of ckind_test
| CITTypeRef of Xquery_common_ast.ctname
| CITItem
| CITNumeric
| CITAnyString
| CITAtomic of Xquery_common_ast.ctname
| CITEmpty
type csequencetype_desc = citemtype * Occurrence.occurrence_indicator option 
type csequencetype = {
   pcsequencetype_desc : csequencetype_desc;
   pcsequencetype_loc : Finfo.finfo;
}
type cfunction_signature = (csequencetype * Xquery_type_core_ast.cxtype) list *
(csequencetype * Xquery_type_core_ast.cxtype)
type cpattern = {
   pcpattern_desc : cpattern_desc;
   pcpattern_loc : Finfo.finfo;
}
type cpattern_desc = 
| CCase of (csequencetype * Xquery_type_core_ast.cxtype)
| CDefault
type cnode_test = 
| CPNameTest of Namespace_names.rqname
| CPNodeKindTest of (ckind_test * Xquery_type_core_ast.cxtype)
type overloaded_signature_table = (Xquery_common_ast.cfname * cfunction_signature *
acfunction_body_kind * Xquery_common_ast.updating_modifier)
list
type acexpr = {
   pcexpr_desc : acexpr_desc;
   pcexpr_annot : Xquery_core_ast_annotation.ast_annot;
   mutable pcexpr_origin : Xquery_ast.expr_handle;
   pcexpr_loc : Finfo.finfo;
}
type acinsert_location = 
| CUAsLastInto of acexpr
| CUAsFirstInto of acexpr
| CUInto of acexpr
| CUAfter of acexpr
| CUBefore of acexpr
type acexpr_desc = 
| CEUnordered of acexpr
| CEOrdered of acexpr
| CEFLWOR of acfl_expr list * acexpr option
* acorder_by option * acexpr
| CEIf of acexpr * acexpr * acexpr
| CETypeswitch of acexpr
* (cpattern * Xquery_common_ast.cvname option *
acexpr)
list
| CEVar of Xquery_common_ast.cvname
| CECall of Xquery_common_ast.cfname * acexpr list
* ((csequencetype * Xquery_type_core_ast.cxtype) option
list * (csequencetype * Xquery_type_core_ast.cxtype))
* Xquery_common_ast.updating_modifier * bool
| CEOverloadedCall of Xquery_common_ast.cfname * acexpr list
* overloaded_signature_table
| CEScalar of Xquery_common_ast.literal
| CESeq of acexpr * acexpr
| CEEmpty
| CEDocument of acexpr
| CEPI of Namespace_names.ncname * string
| CEPIComputed of acexpr * acexpr
| CEComment of string
| CECommentComputed of acexpr
| CEText of string
| CECharRef of int
| CETextComputed of acexpr
| CEElem of Xquery_common_ast.cename * Namespace_context.nsenv
* acexpr list
| CEAnyElem of acexpr * Namespace_context.nsenv * Namespace_context.nsenv
* acexpr
| CEAttr of Xquery_common_ast.caname * acexpr list
| CEAnyAttr of acexpr * Namespace_context.nsenv * acexpr
| CEError of acexpr list
| CETreat of acexpr
* (csequencetype * Xquery_type_core_ast.cxtype)
| CEValidate of (Xquery_common_ast.validation_mode * acexpr)
| CECast of acexpr * Namespace_context.nsenv
* (csequencetype * Xquery_type_core_ast.cxtype)
| CECastable of acexpr * Namespace_context.nsenv
* (csequencetype * Xquery_type_core_ast.cxtype)
| CEForwardAxis of Xquery_common_ast.cvname * Xquery_common_ast.axis
* cnode_test
| CEReverseAxis of Xquery_common_ast.cvname * Xquery_common_ast.axis
* cnode_test
| CESome of (csequencetype * Xquery_type_core_ast.cxtype) option
* Xquery_common_ast.cvname * acexpr
* acexpr
| CEEvery of (csequencetype * Xquery_type_core_ast.cxtype) option
* Xquery_common_ast.cvname * acexpr
* acexpr
| CELetServerImplement of Namespace_names.ncname * string * acexpr
* acexpr
| CEExecute of bool * Namespace_names.ncname * string * acexpr
* acexpr
| CEForServerClose of Namespace_names.ncname * string * acexpr
| CEEvalClosure of acexpr
| CECopy of acexpr
| CEDelete of acexpr
| CEInsert of acexpr * acinsert_location
| CERename of Namespace_context.nsenv * acexpr * acexpr
| CEReplace of Xquery_common_ast.value_of_flag * acexpr
* acexpr
| CESnap of Xquery_common_ast.snap_modifier * acexpr
| CEProtoValue of Datatypes.atomic_type
| CELetvar of (csequencetype * Xquery_type_core_ast.cxtype) option
* Xquery_common_ast.cvname * acexpr
* acexpr
| CESet of Xquery_common_ast.cvname * acexpr
| CEImperativeSeq of acexpr * acexpr
| CEWhile of acexpr * acexpr
type acfl_expr = 
| CELET of (csequencetype * Xquery_type_core_ast.cxtype) option
* Xquery_common_ast.cvname * acexpr
| CEFOR of (csequencetype * Xquery_type_core_ast.cxtype) option
* Xquery_common_ast.cvname * Xquery_common_ast.cvname option
* acexpr
type acorder_by = Xquery_common_ast.stablekind * acorder_spec list *
overloaded_signature_table
type acorder_spec = acexpr * Xquery_common_ast.sortkind *
Xquery_common_ast.emptysortkind
type acfunction_body = 
| CEFunctionBltIn
| CEFunctionInterface
| CEFunctionImported
| CEFunctionUser of acexpr
type acfunction_body_kind = 
| CEFunctionBltInKind
| CEFunctionInterfaceKind
| CEFunctionImportedKind
| CEFunctionUserKind
type acfunction_def = {
   pcfunction_def_desc : acfunction_def_desc;
   pcfunction_def_loc : Finfo.finfo;
}
type acfunction_def_desc = (Xquery_common_ast.cfname * int) * Xquery_common_ast.cvname list *
cfunction_signature * acfunction_body *
Xquery_common_ast.updating_modifier
type acvar_body = 
| CEVarExternal
| CEVarInterface
| CEVarImported
| CEVarUser of acexpr
type acvar_decl = {
   pcvar_decl_desc : acvar_decl_desc;
   pcvar_decl_loc : Finfo.finfo;
}
type acvar_decl_desc = Xquery_common_ast.cvname *
(csequencetype * Xquery_type_core_ast.cxtype) option *
acvar_body
type acserver_decl = {
   pcserver_decl_desc : acserver_decl_desc;
   pcserver_decl_loc : Finfo.finfo;
}
type acserver_decl_desc = Namespace_names.ncname * string * acexpr 
type acindex_def = {
   pcindex_def_desc : acindex_def_desc;
   pcindex_def_loc : Finfo.finfo;
}
type acindex_def_desc = 
| CValueIndex of string * acexpr * acexpr
| CNameIndex of Xquery_common_ast.cename
type acstatement = acexpr 
type acprolog = {
   pcprolog_functions : acfunction_def list;
   pcprolog_vars : acvar_decl list;
   pcprolog_servers : acserver_decl list;
   pcprolog_indices : acindex_def list;
}
type acxmodule = {
   pcmodule_prolog : acprolog;
   pcmodule_statements : acstatement list;
}
type acinterface = acprolog