X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Fsoftware%2Fcomponents%2Fng_kernel%2FnReference.mli;h=d291b621b7140c828e12a5614ffd28a15ea85890;hb=7bc72d8afaebb1d2070a26b07f9bf4242b648e2c;hp=26145ee797b4a69ecb50b7ce6693e63d3927da2e;hpb=0fae7e0c93edd15c8e7f9f8330721f94388100ad;p=helm.git diff --git a/helm/software/components/ng_kernel/nReference.mli b/helm/software/components/ng_kernel/nReference.mli index 26145ee79..d291b621b 100644 --- a/helm/software/components/ng_kernel/nReference.mli +++ b/helm/software/components/ng_kernel/nReference.mli @@ -15,18 +15,23 @@ exception IllFormedReference of string Lazy.t type spec = | Decl - | Def - | Fix of int * int (* fixno, recparamno *) + | Def of int (* height *) + | Fix of int * int * int (* fixno, recparamno, height *) | CoFix of int - | Ind of int - | Con of int * int (* indtyno, constrno *) + | Ind of bool * int * int (* inductive, indtyno, leftno *) + | Con of int * int * int (* indtyno, constrno, leftno *) -type reference = Ref of int * NUri.uri * spec +type reference = private Ref of NUri.uri * spec + +val reference_of_spec: NUri.uri -> spec -> reference val eq: reference -> reference -> bool val string_of_reference: reference -> string +val reference_of_string: string -> reference - -(* CACCA *) -val reference_of_ouri: UriManager.uri -> spec -> reference -val ouri_of_reference: reference -> UriManager.uri +(* given the reference of an inductive type, returns the i-th contructor *) +val mk_constructor: int -> reference -> reference +(* given the reference of an inductive type constructor, returns the indty *) +val mk_indty: bool -> reference -> reference +val mk_fix: int -> int -> reference -> reference +val mk_cofix: int -> reference -> reference