(***********************************************************************)
(*                                                                     *)
(*                                 GALAX                               *)
(*                            XML Query Engine                         *)
(*                                                                     *)
(*  Copyright 2000, Lucent Technologies.                               *)
(*  Distributed only by permission.                                    *)
(*                                                                     *)
(***********************************************************************)

(* $Id: typing.mli,v 1.8 2003/04/30 00:42:01 simeon Exp $ *)

(*******************************)
(* main type-checking function *)
(*******************************)

val type_cstatement : Static_context.static_context -> Xquery_ast.cstatement -> Xquery_ast.model
val type_cexpr   : Static_context.static_context -> Xquery_ast.cexpr   -> Xquery_ast.model
val type_cupdate : Static_context.static_context -> Xquery_ast.cupdate -> Xquery_ast.model

val type_module : Static_context.static_context -> Xquery_ast.cquery_module -> Static_context.static_context

(* match_function_signature_name looks up most specific function that
   implements argument function applied to arguments with given types.
*)
val match_function_signature_name :  
  Static_context.static_context ->
  Finfo.finfo ->
  Namespace.rqname ->
  Xquery_ast.model list ->
  Namespace.rqname

