summaryrefslogtreecommitdiff
path: root/library/lib.ml
diff options
context:
space:
mode:
authorGravatar Samuel Mimram <samuel.mimram@ens-lyon.org>2005-01-31 14:34:14 +0000
committerGravatar Samuel Mimram <samuel.mimram@ens-lyon.org>2005-01-31 14:34:14 +0000
commit6497f27021fec4e01f2182014f2bb1989b4707f9 (patch)
tree473be7e63895a42966970ab6a70998113bc1bd59 /library/lib.ml
parent6b649aba925b6f7462da07599fe67ebb12a3460e (diff)
Imported Upstream version 8.0pl2upstream/8.0pl2
Diffstat (limited to 'library/lib.ml')
-rw-r--r--library/lib.ml14
1 files changed, 13 insertions, 1 deletions
diff --git a/library/lib.ml b/library/lib.ml
index b9da6dea..a9f864ef 100644
--- a/library/lib.ml
+++ b/library/lib.ml
@@ -6,7 +6,7 @@
(* * GNU Lesser General Public License Version 2.1 *)
(************************************************************************)
-(* $Id: lib.ml,v 1.63.2.2 2004/07/16 19:30:35 herbelin Exp $ *)
+(* $Id: lib.ml,v 1.63.2.3 2004/11/22 14:21:23 herbelin Exp $ *)
open Pp
open Util
@@ -564,3 +564,15 @@ let library_part ref =
else
(* Theorem/Lemma outside its outer section of definition *)
dir
+
+
+let rec file_of_mp = function
+ | MPfile dir -> Some dir
+ | MPself _ -> Some (library_dp ())
+ | MPbound _ -> None
+ | MPdot (mp,_) -> file_of_mp mp
+
+let file_part = function
+ | VarRef id -> anomaly "TODO";
+ | ConstRef kn | ConstructRef ((kn,_),_) | IndRef (kn,_) ->
+ file_of_mp (modpath kn)