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

(* $Id: typing.mli,v 1.6 2003/01/08 20:32:55 mff Exp $ *)

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

val eval_type_cexpr   : Xatenv.tenv -> Xquery_ast.cexpr   -> Xquery_ast.model
val eval_type_cupdate : Xatenv.tenv -> Xquery_ast.cupdate -> Xquery_ast.model

val type_toplevel : Xatenv.tenv -> Xquery_ast.cquery_module -> Xatenv.tenv

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

