let source_id_of_id id = "#source#" ^ id;;
-exception NotEnoughElements;;
+exception NotEnoughElements of string;;
(*CSC: cut&paste da cicPp.ml *)
(* get_nth l n returns the nth element of the list l if it exists or *)
(* raises NotEnoughElements if l has less than n elements *)
-let rec get_nth l n =
+let rec get_nth msg l n =
match (n,l) with
(1, he::_) -> he
- | (n, he::tail) when n > 1 -> get_nth tail (n-1)
- | (_,_) -> raise NotEnoughElements
+ | (n, he::tail) when n > 1 -> get_nth msg tail (n-1)
+ | (_,_) -> raise (NotEnoughElements msg)
;;
match tt with
C.Rel n ->
let id =
- match get_nth context n with
+ match get_nth "1" context n with
(Some (C.Name s,_)) -> s
| _ -> "__" ^ string_of_int n
in
match t with
C.Rel n ->
let idref,id =
- match get_nth context n with
+ match get_nth "2" context n with
idref,(Some (C.Name s,_)) -> idref,s
| idref,_ -> idref,"__" ^ string_of_int n
in