On Thu, Dec 22, 2011 at 11:35:41PM +0100, Stéphane Glondu wrote:
> Le 22/12/2011 22:39, oliver a écrit :
> >>> where is there a documentation about these kind of errors from pcre-lib?
> >>> I'm using Pcre.pmatch, which should just give me a bool.
> >>
> >> See pcre.mli. Pcre.Error(0) is the raw representation of Partial (i.e.
> >> string only matched the pattern partially).
> > [...]
> > 
> > In my pcre.mli this error is not mentioned.
> > 
> > There is a
> > 
> > 
> > type error =
> >   | Partial  (** String only matched the pattern partially *)
>       ^^^^^^^
> 
> There.
> 
> > Which also mentioned a partial-match error.
> > But Pcre.Error(0) looks somehow cryptical
> > and strange to me.
> 
> Pcre.Error(0) is cryptical but not strange: it is the same as
> Pcre.Error(Pcre.Partial). Whatever gives you the error message
> mentioning Pcre.Error(0) does not have access to type information, so it
> cannot give you more than Pcre.Error(0). You didn't tell where the error
> message came from.


So, (0) stands for the first entry in the list I assume.
BadPartial-exception then would be Pcre.Error(1). ?

That there is only returned an int, instead of the type information,
where does that come from?
Why is that not available?
Does it coming from working together with the *.c stuff?




> 
> >> By the way, in doubt, you can catch Pcre.Error and pattern-match on its
> >> argument.
> > 
> > Yes, I think that makes sense.
> > But Pcre.Error(0) is not very verbose, and I also want to know
> > what I catch and why...
> 
> try Pcre.exec ...
> with Pcre.Error e ->
>   match e with
>     | Partial -> ...
>     | _ -> ...
> 
> If you are using the generic exception pretty-printer (module Printexc),
> you can register a pretty-printer for Pcre.Error with
> Printexc.register_printer.

Hmhhh.
Not used that stuff so far.

> 
> > Installing a newer pcre was easy, but then my build process complains
> > about multiple stublibs-directories. So I threw it away.
> > So maybe it's better to change the apt-get stuff instead.
> 
> The only way a new version of pcre could "fix" that would be if it
> registered a pretty-printer as explained above. But this is not the
> case, even in the last version (6.2.4).

OK, thanks.

I also looked now, at what the original package offers...
...for example with "make doc" a lot of additional
nice docs will be created.

That was not offered by my OS-based installation.
So, looking at the source package was an interesting experience.


Ciao,
   Oliver


-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa-roc.inria.fr/wws/info/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Reply via email to