X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_textual_parser%2FcicTextualLexer.mll;h=6db492ee1745319fe06cb400f4860adfc6066112;hb=87218276a42635aad90a91757d431a9cb61983a4;hp=58e6cf35b12d877e6fe61a2e251d6b3a5d34e7ca;hpb=a537ad12d57d10498d9b572290f6050dece06b0a;p=helm.git diff --git a/helm/ocaml/cic_textual_parser/cicTextualLexer.mll b/helm/ocaml/cic_textual_parser/cicTextualLexer.mll index 58e6cf35b..6db492ee1 100644 --- a/helm/ocaml/cic_textual_parser/cicTextualLexer.mll +++ b/helm/ocaml/cic_textual_parser/cicTextualLexer.mll @@ -31,21 +31,29 @@ let indtyuri_of_uri uri = let index_sharp = String.index uri '#' in let index_num = index_sharp + 3 in - (UriManager.uri_of_string (String.sub uri 0 index_sharp), - int_of_string (String.sub uri index_num (String.length uri - index_num)) - 1 - ) + try + (UriManager.uri_of_string (String.sub uri 0 index_sharp), + int_of_string(String.sub uri index_num (String.length uri - index_num)) - 1 + ) + with + Failure msg -> + raise (CicTextualParser0.LexerFailure "Not an inductive URI") ;; let indconuri_of_uri uri = let index_sharp = String.index uri '#' in let index_div = String.rindex uri '/' in let index_con = index_div + 1 in - (UriManager.uri_of_string (String.sub uri 0 index_sharp), - int_of_string - (String.sub uri (index_sharp + 3) (index_div - index_sharp - 3)) - 1, - int_of_string - (String.sub uri index_con (String.length uri - index_con)) - ) + try + (UriManager.uri_of_string (String.sub uri 0 index_sharp), + int_of_string + (String.sub uri (index_sharp + 3) (index_div - index_sharp - 3)) - 1, + int_of_string + (String.sub uri index_con (String.length uri - index_con)) + ) + with + Failure msg -> + raise (CicTextualParser0.LexerFailure "Not a constructor URI") ;; } let num = ['1'-'9']['0'-'9']* | '0'