(* ****** ****** *)

%{
implement srcfilename_get () = "../intinf_t.sats"
%}

(* ****** ****** *)

%{
val () = patscode_count_reset()
val () = patscode_prefix_set("TRYIT/libats-hwxi_intinf")
%}

(* ****** ****** *)

#decltitle("\
ATSLIB/contrib/libats-hwxi/intinf_t\
")

(* ****** ****** *)

#declpreamble('\

#para('\

This package is for supporting integers of unlimited precision, and it is
implemented based on the <a href="http://www.gmplib.org/">GMP</a> library.
The primary purpose of the package is to provide a simple and clean
approach to programming with large integers.\

')#comment("para")

')#comment("declpreamble")

(* ****** ****** *)

#declnamesynop("intinf")

%{
(*
#declnamesynop("intinf_type")
*)
%}

(* ****** ****** *)

#declnamesynop("Intinf")

(* ****** ****** *)

#declnamesynop("intinfLt")
#declnamesynop("intinfLte")
#declnamesynop("intinfGt")
#declnamesynop("intinfGte")
#declnamesynop("intinfBtw")
#declnamesynop("intinfBtwe")

(* ****** ****** *)

#declnamesynop("intinf_make_int")
#declnamesynop("intinf_make_uint")
#declnamesynop("intinf_make_lint")
#declnamesynop("intinf_make_ulint")

(* ****** ****** *)

#declnamesynop("intinf_free")

(* ****** ****** *)

#declnamesynop("print_intinf")
#declnamesynop("prerr_intinf")
#declnamesynop("fprint_intinf")
#declnamesynop("fprint_intinf_base")

(* ****** ****** *)

#declnamesynop("abs_intinf")
#declnamesynop("neg_intinf")

(* ****** ****** *)

#declnamesynop("succ_intinf1")
#declnamesynop("pred_intinf1")

(* ****** ****** *)

#declnamesynop("add_intinf_int")
#declnamesynop("add_int_intinf")
#declnamesynop("add_intinf_intinf")

(* ****** ****** *)

#declnamesynop("sub_intinf_int")
#declnamesynop("sub_int_intinf")
#declnamesynop("sub_intinf_intinf")

(* ****** ****** *)

#declnamesynop("mul_intinf_int")
#declnamesynop("mul_int_intinf")
#declnamesynop("mul_intinf_intinf")

(* ****** ****** *)

#declnamesynop("compare_int_intinf")
#declnamesynop("compare_intinf_int")
#declnamesynop("compare_intinf_intinf")

(* ****** ****** *)

#declnamesynop("pow_intinf_int")

(* ****** ****** *)

(* end of [intinf_t.atxt] *)
