Caml1999I031 e )Odoc_misc)no_blanks@&stringO@@@@@@@@@-odoc_misc.mliUU@@@@4input_file_as_string@@@@@@@@@@XXJ@@*A@1split_with_blanks@)@@@$listI3@@@@@@@@@.[/[@@DB@3string_of_longident@)Longident!t@@@K@@@@@@E^F^2@@[C@.string_of_text@*Odoc_types$text@@@b@@@@@@\aTT]aT@@rD@5string_of_author_list@Du@@@@@@z@@@@@@tdud@@E@5string_of_version_opt@&optionJ@@@@@@@@@@@@g''g'Z@@F@3string_of_since_opt@@@@@@@@@@@@@jj@@G@;string_of_raised_exceptions@@@@m$text@@@@@@@@@@@@@@mm[@@H@-string_of_see@'see_ref@@@$text@@@@@@@@@@@pp@@I@.string_of_sees@Ϡ'see_ref@@@$text@@@@@@@@@@@@@@ s   s  j@@!J@4string_of_return_opt@$text@@@@@@+@@@@@@%v  &v  @@;K@.string_of_info@$info@@@@@@@@@@:y  ;y  M@@PL@)apply_opt@@!a@!b@@@@Ҡ@@@נ@@@@@@@@[| } }\| } @@qM@.string_of_date(absolute$boolE@@@@@@$hour@@@@@@@%floatD@@@@@@@@@@@@@@ , ,@ , p@@N@,current_date@@@@E  E  )@@O@6first_sentence_of_text@S$text@@@Y$text@@@@@@J  J  @@P@?first_sentence_and_rest_of_text@j$text@@@s$text@@@ʠz$text@@@@@@@@P  Q 1@@Q@5text_no_title_no_list@$text@@@$text@@@@@@TmmTm@@R@+text_concat@$text@@@@נ$text@@@@@@$text@@@@@@@@ X XZ@@!S@2get_titles_in_text@$text@@@#intA@@@ڠ8@@@@@@٠$text@@@@@@@@@@@;\<\@@QT@2create_index_lists@#!a@@@@@@ ]@@@@@48@@@@@@@@@@@acYYbcY@@wU@1remove_duplicates@@!a@@Q@@@@@@@@W@@@\@@@@@@@@g++g+j@@V@5remove_ending_newline@@@@@@@@@@jj@@W@6search_string_backward#pat@@@!s@@@@@@@@@@@nn@@X@-remove_option@%Types)type_expr@@@)type_expr@@@@@@sqqsq@@Z@+is_optional@(Asttypes)arg_label@@@t@@@@@@vv @@[@*label_name@)arg_label@@@@@@@@@zjjzj@@\@@z)Odoc_misc0e8 NC}(Warnings0zdͦkUe$%Types0lm?ƈ.Type_immediacy0dV^25b)̓ԆSj-Stdlib__Uchar0*Ujmyc6]]W+Stdlib__Set0.z9FX+Stdlib__Seq05"g1<)b+Stdlib__Map0kZ,ҷ'V.Stdlib__Lexing01'jh,-k4,Stdlib__Lazy0C 4 "$p1tU/Stdlib__Hashtbl04$*uկdD.Stdlib__Format0{hXsHW#ȼ.Stdlib__Either0&]XF.Stdlib__Buffer0K ɦb+Z8)#KH"&Stdlib0yӶ~*%Shape0H[DTċwToe@Q)Primitive0յ_9|br$Path0L%SsN|#Ɣj)Parsetree0`ⰧkRE+Outcometree0gCtrU@б@г&stringHUIU@@ @@@J@@г&stringUUVU@@ @@@W@@@@@Z@@@`U @)ocaml.docq b [no_blanks s] returns the given string without any blank characters, i.e. '\n' '\r' ' ' '\t'. nRWWoT@@@@@@@@@@o4input_file_as_string zX#{X7@б@г⠐&stringX:X@@@ @@@0@S.@A@@г&stringXDXJ@@ @@@@@@@@@@@X @? 8 This function returns a file in the form of one string.WW@@@@@@@A@@%1split_with_blanks [[@б@г&string[[@@ @@@0@>S,@A@@гf$list[[@г8&string[[@@ @@@@@@@@@ @@@$@@!'@@@[@ H [split_with_blanks s] splits the given string [s] according to blanks. ZLLZL@@@@@@@B@)@43string_of_longident^^@б@г)Longident!t)Longident^^(@@@@@0@Rg1@A@@г&string"^,#^2@@ @@@@@@@@@@@-^ @͐ 4 This function creates a string from a Longident.t .9]:]@@@@@@@QC@@%.string_of_text&EaTXFaTf@б@г*Odoc_types$text*Odoc_typesUaTiVaTx@@@@@0WVVWWWWW@C]1@A@@г&stringdaT|eaT@@ @@@@@@@@@@@oaTT @: get a string from a text {`44|`4S@@@@@@@D@@%5string_of_author_list'dd@б@г'$listdd@г&stringdd@@ @@@0@Hb6@A@@@ @@@ @@г &stringdd@@ @@@@@@@@@@@d @[ ' @return a string for an authors list. cc@@@@@@@E@@*5string_of_version_opt(g'+g'@@б@гR&optiong'Jg'P@гE&stringg'Cg'I@@ @@@0@Ml6@A@@@ @@@ @@гY&stringg'Tg'Z@@ @@@@@@@@@@@g'' @ = @return a string for the given optional version information.ff&@@@@@@@+F@@*3string_of_since_opt)j j@б@г&option*j+j@г&string4j5j@@ @@@065566666@Ml6@A@@@ @@@ @@г&stringHjIj@@ @@@@@@@@@@@Sj @󐠠 ; @return a string for the given optional since information._i\\`i\@@@@@@@wG@@*;string_of_raised_exceptions*kmlm/@б@г $listvmMwmQ@Вгࠐ&stringm3m9@@ @@@0@Po9@A@@гC$text*Odoc_typesm<mK@@ @@@@@@@@ @@@2@@@m20@@г &stringmUm[@@ @@@+@@@@@.@@@m @Y : @return a string for the given list of raised exceptions.ll@@@@@@@H@@A-string_of_see+pp@б@Вг'see_ref*Odoc_typespp@@ @@@0@`2@A@@г$text*Odoc_typespp@@ @@@@@@@@ @@гd&stringpp@@ @@@%@@@@@(.@@@p @ 5 @return a string for the given "see also" reference.o]]o]@@@@@@@6I@@;.string_of_sees,*s  $+s  2@б@гʠ$list5s  \6s  `@Вг'see_ref*Odoc_typesEs  6Fs  H@@ @@@0GFFGGGGG@d<@A@@г$text*Odoc_typesXs  KYs  Z@@ @@@@@@@@ @@@5@@@hs  53@@г͠&stringps  dqs  j@@ @@@+@@@@@.@@@{s   @ > @return a string for the given list of "see also" references.rr @@@@@@@J@@A4string_of_return_opt-v  v  @б@г&optionv  v  @гX$text*Odoc_typesv  v  @@ @@@0@g9@A@@@ @@@ @@г&stringv  v  @@ @@@@@@@@@@@v   @j < @return a string for the given optional return information.u l lu l @@@@@@@K@@*.string_of_info.y  #y  1@б@г$info*Odoc_typesy  4y  C@@ @@@0@Fh/@A@@г\&stringy  Gy  M@@ @@@@@@@@@@@ y   @ . get a string from a Odoc_info.info structure x  x  @@@@@@@.L@@%)apply_opt/"| } #| } @б@б@А!a@A@0-,,-----@<T*@A3| } 4| } @@А!b@A@ >| } ?| } @@@ @@@@б@г&optionL| } M| } @А!a'"S| } T| } @@@-@@@) @@гՠ&optiona| } b| } @А!b/7h| } i| } @@@5@@@> @@@@@A@@@4@@Du| } @@@x| } }@ ( Apply a function to an optional value. { O O{ O |@@@@@@@M@&@X.string_of_date0@ , 0@ , >@б(absoluteгl$bool@ , K@ , O@@ @@@0@s.@A@@б$hourг$bool@ , Y@ , ]@@ @@@@@б@гq%float@ , a@ , f@@ @@@"@@г)&string@ , j@ , p@@ @@@/@@@@@2@@0R)@@@ @@:@ , S@@L D@@@@@B@ , A@@ @@ , ,@ s Return a string representing a date given as a number of seconds since 1970. The hour is optionally displayed. ~    +@@@@@@@ N@+@V,current_date1E  E  @гf&string E  # E  )@@ @@@0        @m*@A@@@E   @@*O@ @@6first_sentence_of_text2J  J  @б@г$text*Odoc_types,J  -J  @@ @@@0.--.....@$7"@A@@г$text*Odoc_types>J  ?J  @@ @@@@@@@@@@@IJ   @鐠 Return the first sentence (until the first dot) of a text. Don't stop in the middle of [Code], [Verbatim], [List], [Lnum], [Latex], [Link], or [Ref]. UG + +VI  @@@@@@@mP@@(?first_sentence_and_rest_of_text3aP  bP  @б@г$text*Odoc_typesoQ  pQ  @@ @@@0qppqqqqq@D\/@A@@Вг1$text*Odoc_typesQ Q @@ @@@@@гB$text*Odoc_typesQ "Q 1@@ @@@&@@@@@+ @@@1@@.4 @@@P  @E Return the first sentence (until the first dot) of a text, and the remaining text after. Don't stop in the middle of [Code], [Verbatim], [List], [Lnum], [Latex], [Link], or [Ref]. L  O  @@@@@@@Q@@A5text_no_title_no_list4TmqTm@б@гx$text*Odoc_typesTmTm@@ @@@0@]u/@A@@г$text*Odoc_typesTmTm@@ @@@@@@@@@@@Tmm @ 4 Return the given [text] without any title or list. S33S3l@@@@@@@ R@@(+text_concat5XX@б@г$text*Odoc_typesX X/@@ @@@0@D\/@A@@б@г$listXC XG@г$text*Odoc_types,X3-XB@@ @@@@@@@@@# @@г$text*Odoc_typesAXKBXZ@@ @@@3@@@@@6@@@<@@9? @@@OX@ [ [concat sep l] concats the given list of text [l], each separated with the text [sep]. [V\W @@@@@@@sS@@L2get_titles_in_text6g\h\@б@г"$text*Odoc_typesu\v\@@ @@@0wvvwwwww@h/@A@@г$list\\@Вг;#int\\@@ @@@@@г&option\\@г&string\\@@ @@@4@@@@@@9 @@гl$text*Odoc_types\\@@ @@@J@@@5 @@P: @@@N @@@U\L@@@\@@Y_O@@@\R@v b Return the list of titles in a [text]. A title is a title level, an optional label and a text.Z\\[@@@@@@@T@a@l2create_index_lists7cY]cYo@б@г$listcYucYy@А!a@A@0@2@AcYrcYt@@@ @@@ @@б@б@А!acY~cY@@г|&stringcY cY@@ @@@ @@@(@@#@@гĠ$list/cY0cY@гΠ$list9cY:cY@А!a@;@cYAcY@@@F@@@B @@@@@@G @@@)@@JOcY} @@@I@@NL#@@@UcYY&@ 5 Take a sorted list of elements, a function to get the name of an element and return the list of list of elements, where each list group elements beginning by the same letter. Since the original list is sorted, elements whose name does not begin with a letter should be in the first returned list.a^bbX@@@@@@@yU@5@a1remove_duplicates8mg+/ng+@@б@б@А!a@A@0xwwxxxxx@x*@A~g+Dg+F@@б@А!a g+Jg+L@@г9#intg+Pg+S@@ @@@@@@!@@@@@$@@ @@б@г9$listg+[g+_@А!a4/g+Xg+Z@@@:@@@ 6 @@гN$listg+fg+j@А!aIDg+cg+e@@@O@@@ K @@@@@ N@@@4@@ Qg+C@@@g++@p [remove_duplicates compare li] removes the duplicates in the input list, keeping the leftmost occurrence of each repeated element. ef*@@@@@@@V@&@e5remove_ending_newline9jj@б@гP&stringjj@@ @@@0@~,@A@@г_&string j j@@ @@@@@@@@@@@ j @ L [remove_ending_newline s] returns [s] without the optional ending newline.  ill il@@@@@@@ 1W@@%6search_string_backward: %n &n@б#patг&string 2n 3n@@ @@@0 4 3 3 4 4 4 4 4@@U.@A@@б!sг&string En Fn@@ @@@@@г#int Rn Sn@@ @@@ @@@@# [n @@5*@@' _n @@@ bn@ [search_string_backward pat s] searches backward string [pat] in string [s]. Return position in string [s] where [pat] appears, orelse raise [Not_found].  nl om=@@@@@@@ X@@;-remove_option zsqu {sq@б@г%Types)type_expr%Types sq sq@@@@@ w0        @Yp1@A@@г)type_expr%Types sq sq@@ @@@ x@@@@@ y@@@ sqq @G Take a type and remove the option top constructor. This is useful when printing labels, we then remove the top option constructor for optional labels. p rWp@@@@@@@ Z@@(+is_optional v v@б@г(Asttypes)arg_label(Asttypes v v@@@@@ 0        @F`1@A@@г $bool v v @@ @@@ @@@@@ @@@ v @ . Return [true] if the given label is optional. u u@@@@@@@ [@@%*label_name zjn zjx@б@гB)arg_label(Asttypes zj{ zj@@ @@@ 0        @A[/@A@@г {&string zj zj@@ @@@ @@@@@ @@@ )zjj @ɐ Y Return the label name for the given label, i.e. removes the beginning '?' if present. 5x   6y:i@@@@@@@ M\@@%@ @@V@B@@@xB@.@@=@)@@uK@7@q@]H@A@@y@e@@{@@^@J @@@tJ@@0 n m m n n n n n@^vL@A@ H************************************************************************ wA@@ xA@L@ H  }BMM ~BM@ H OCaml  C C@ H  D D3@ H Maxence Guesdon, projet Cristal, INRIA Rocquencourt  E44 E4@ H  F F@ H Copyright 2001 Institut National de Recherche en Informatique et  G G@ H en Automatique.  H Hg@ H  Ihh Ih@ H All rights reserved. This file is distributed under the terms of  J J@ H the GNU Lesser General Public License version 2.1, with the  K KN@ H special exception on linking described in the file LICENSE.  LOO LO@ H  M M@ H************************************************************************ N N5@:* Miscellaneous functions  ˠ c* [no_blanks s] returns the given string without any blank characters, i.e. '\n' '\r' ' ' '\t'.  ` 9* This function returns a file in the form of one string. & I* [split_with_blanks s] splits the given string [s] according to blanks. ݠ 5* This function creates a string from a Longident.t .;* get a string from a text _ (* @return a string for an authors list.  >* @return a string for the given optional version information.͠ <* @return a string for the given optional since information. ;* @return a string for the given list of raised exceptions.! 6* @return a string for the given "see also" reference.ˠ ?* @return a string for the given list of "see also" references.e =* @return a string for the given optional return information. /* get a string from a Odoc_info.info structure ܠ )* Apply a function to an optional value. q t* Return a string representing a date given as a number of seconds since 1970. The hour is optionally displayed.  Value returned by string_of_date for current time. * Uses environment variable SOURCE_DATE_EPOCH if set; falls back to * current timestamp otherwise.  B r r D  @ * Return the first sentence (until the first dot) of a text. Don't stop in the middle of [Code], [Verbatim], [List], [Lnum], [Latex], [Link], or [Ref].  * Return the first sentence (until the first dot) of a text, and the remaining text after. Don't stop in the middle of [Code], [Verbatim], [List], [Lnum], [Latex], [Link], or [Ref]. S 5* Return the given [text] without any title or list.  \* [concat sep l] concats the given list of text [l], each separated with the text [sep].  c* Return the list of titles in a [text]. A title is a title level, an optional label and a text.+ 6* Take a sorted list of elements, a function to get the name of an element and return the list of list of elements, where each list group elements beginning by the same letter. Since the original list is sorted, elements whose name does not begin with a letter should be in the first returned list. * [remove_duplicates compare li] removes the duplicates in the input list, keeping the leftmost occurrence of each repeated element. 7 M* [remove_ending_newline s] returns [s] without the optional ending newline.  * [search_string_backward pat s] searches backward string [pat] in string [s]. Return position in string [s] where [pat] appears, orelse raise [Not_found].  * Take a type and remove the option top constructor. This is useful when printing labels, we then remove the top option constructor for optional labels.i /* Return [true] if the given label is optional.* Z* Return the label name for the given label, i.e. removes the beginning '?' if present.@)../ocamlc)-nostdlib"-I)../stdlib"-I(../utils"-I*../parsing"-I)../typing"-I)../driver"-I+../bytecomp"-I+../toplevel"-I)../stdlib"-I/../compilerlibs"-I0../otherlibs/str"-I4../otherlibs/dynlink"-I;../otherlibs/dynlink/native"-I1../otherlibs/unix(-absname"-w8+a-4-9-41-42-44-45-48-70+-warn-error"+A,-safe-string0-strict-sequence/-strict-formats*-bin-annot*-principal"-c H I