From 78fff376f71ce6538dad42be95b074a916a4ce49 Mon Sep 17 00:00:00 2001 From: notin Date: Fri, 28 Apr 2006 14:25:31 +0000 Subject: r8931@thot: notin | 2006-04-28 16:19:38 +0200 Correction d'un bug dans add_glob (list_chop), avec ajout des list_drop_prefix dans lib/util.ml et de drop_dirpath_prefix dans library/libnames.ml git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@8768 85f007b7-540e-0410-9357-904b9bb8a0f7 --- library/libnames.ml | 6 +++++- library/libnames.mli | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'library') diff --git a/library/libnames.ml b/library/libnames.ml index d4cc60719..424cf1f73 100644 --- a/library/libnames.ml +++ b/library/libnames.ml @@ -80,7 +80,11 @@ let is_dirpath_prefix_of d1 d2 = let chop_dirpath n d = let d1,d2 = list_chop n (List.rev (repr_dirpath d)) in - make_dirpath (List.rev d1), make_dirpath (List.rev d2) + make_dirpath (List.rev d1), make_dirpath (List.rev d2) + +let drop_dirpath_prefix d1 d2 = + let d = Util.list_drop_prefix (List.rev (repr_dirpath d1)) (List.rev (repr_dirpath d2)) in + make_dirpath (List.rev d) (* To know how qualified a name should be to be understood in the current env*) let add_dirpath_prefix id d = make_dirpath (repr_dirpath d @ [id]) diff --git a/library/libnames.mli b/library/libnames.mli index 22cdd3a09..69710f431 100644 --- a/library/libnames.mli +++ b/library/libnames.mli @@ -54,6 +54,7 @@ val extend_dirpath : dir_path -> module_ident -> dir_path val add_dirpath_prefix : module_ident -> dir_path -> dir_path val chop_dirpath : int -> dir_path -> dir_path * dir_path +val drop_dirpath_prefix : dir_path -> dir_path -> dir_path val extract_dirpath_prefix : int -> dir_path -> dir_path val is_dirpath_prefix_of : dir_path -> dir_path -> bool -- cgit v1.2.3