X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=components%2Fgrafite_parser%2FdependenciesParser.ml;h=eb33e49b80d7b5f453dbadb433851f7de3e96556;hb=b0a6c05decc9f0e731f70cfc5ae5350ae4046b79;hp=74cf0aa774333592b5ed396aab97581a38cd678b;hpb=81b53ddc3ce92187e62deff483919ca2251fd246;p=helm.git diff --git a/components/grafite_parser/dependenciesParser.ml b/components/grafite_parser/dependenciesParser.ml index 74cf0aa77..eb33e49b8 100644 --- a/components/grafite_parser/dependenciesParser.ml +++ b/components/grafite_parser/dependenciesParser.ml @@ -25,6 +25,17 @@ (* $Id$ *) +(* FG + * From Cambridge dictionary + * Dependency: + * a country which is supported and governed by another country + * Dependence: + * when you need something or someone all the time, especially in order to + * continue existing or operating + * + * Fate vobis ... + *) + exception UnableToInclude of string (* statements meaningful for matitadep *) @@ -45,6 +56,12 @@ let parse_dependencies lexbuf = let rec parse acc = try (parser + | [< '("QSTRING", s) >] -> + (* because of alias id qstring = qstring :-( *) + (try + parse (UriDep (UriManager.uri_of_string s) :: acc) + with + UriManager.IllFormedUri _ -> parse acc) | [< '("URI", u) >] -> parse (UriDep (UriManager.uri_of_string u) :: acc) | [< '("IDENT", "include"); '("QSTRING", fname) >] -> @@ -55,7 +72,8 @@ let parse_dependencies lexbuf = | [< 'tok >] -> parse acc | [< >] -> acc) tok_stream with - Stream.Error _ -> parse acc + Stream.Error _ -> parse acc + | CicNotationLexer.Error _ -> parse acc in List.rev (parse []) @@ -65,7 +83,9 @@ let make_absolute paths path = | p :: tl -> let path = p ^ "/" ^ path in try - ignore (Unix.stat path); path + ignore (Unix.stat path); + HLog.debug ("Including "^path^" with path: " ^ p); + path with Unix.Unix_error _ -> aux tl in try