Caml1999T037|Hb_C.Input_handlingР$Unix$Unix:debugger/input_handling.mlSS@@ 3@@@@@@#intA;@@#intA@@@@@&_none_@@A@A@$charB;@@$charA@@@@@ @A@&stringQ;@@&stringA@@@@@@@@%bytesC;@@%bytesA@@@@@@@@%floatD;@@%floatA@@@@@@@@$boolE;@@%falsec@@%@$trued@@+@@@A@@@@@,@A@$unitF;@@"()e@@6@@@A@@@@@7@A@ #exnG;@@@A@@@@@;@@@#effH;@@O@A@A@@@@@@D@@@,continuationI;@@Q@@P@B,continuationA@nY@@@@@@T@@@%arrayJ;@@R@A%arrayA@@@@@@_@@@ $listK;@@S@A"[]f@@l@"::g@@@T@@y@ @@A@Y@@@@@|@@@&optionL;@@V@A$Noneh@@@$Somei@@@@@A@Y@@@@@@@@)nativeintM;@@)nativeintA@@@@@@@@%int32N;@@%int32A@@@@@@@@%int64O;@@%int64A@@@@@@@@&lazy_tP;@@X@A&lazy_tA@Y@@@@@@@@ 5extension_constructorR;@@5extension_constructorA@@@@@@@@*floatarrayS;@@*floatarrayA@@@@@@@@&iarrayT;@@Y@A&iarrayA@Y@@@@@@@@ *atomic_locU;@@Z@A*atomic_locA@@@@@@@@@ .Assert_failure`#@@@@@J@@@@@@@@[@@A頰=ocaml.warn_on_literal_pattern@@0Division_by_zero]#@@@A󠰠  @+End_of_file\#$@@@A@'FailureY#,@'@@A@0Invalid_argumentX#5@0@@A $#@-Match_failureV#>@@=@9@;@@a@@A5!4!@)Not_foundZ#O@@@A&=)<)@-Out_of_memoryW#W@@@A.E1D1@.Stack_overflow^#_@@@A6M9L9@.Sys_blocked_io_#g@@@A>UATA@)Sys_error[#o@j@@AG^J]J@:Undefined_recursive_modulea#x@@w@s@u@@h@@AXo[n[@:Continuation_already_takenb#@@@A`wcvc@&Stdlib@@@@A3@@@S@@@3@@@Р*Primitives*PrimitivesTT@@ 3@@@@@A3@@@T@@ @3@@@@ఠ,active_filesY%)Y%5@@A@@&Stdlib#refC@*file_descr@@@ @@@G*io_channel@@@@@@@@@@ @R*io_channel@@@@@ @@ @@@ A@@@@A@3@J@@@డk#refZ8:Z8=@@!a@@@0H@@@/@@.,%makemutableAA @@@*stdlib.mlihhh@@Q@@@@S@@[V@@@@@,@@ภ"[].Z8?/Z8A@;@@U@@@@AA@A@@@ @гj$list@Z8wAZ8{@В@гopLZ8EMZ8O@@v@@@X@@@В@б@гst_Z8T`Z8^@@z@@@k@@гy$unitkZ8blZ8f@@@@@w@@@@@@@| @@@г}Z8j~Z8t@@@@@@@@@@ @@Z8S @@@@A@@@FZ8u@@@à @@@Z8DX@@Z8>Z8|@@@@@@@@A@Y%%@@@@ఠ(add_file]]@AA@@@@@@>A@@@@@@@@=@@<@@@;@@:A@@@$unitF@@@1A@@@A@@@A@3@&@@@@@࣠@$fileA]]@BA@@13@@]^ @@@@@  @@*controllerA]]@ CA@@:3@!H@@@@@@@@డp":=^ ^@@I!a@@@@9@@8@ @@7M@@@6@@5@@4*%setfield0BA @@@@  @@\@ @@@fa@`@@@8@@@@@9@@7@@@6C@$@@@&@@%@@@#{@@@"@@!@@ 3GFFGGGGG@S_@V@W@@@@ఐ,active_filesY^Z^@@@4@@@4D@?D@5@@ภ"::m^n^@;?@B@AA@AA@@Ƞ@ఐ$file^^@@@6@%io_fd^^@3%io_fd*Primitives*io_channel@@@$Unix*file_descr@@@@@B3%io_in&Stdlib*in_channel@@@@@@ @A7debugger/primitives.mli| I K| I ^@@K@3&io_out"+out_channel@@@@@A@A } _ a } _ v@@&L@-@A~ w y~ w @@*M@;3@@D@Jp@@@ఐ֠*controller^^@}@@ @@ఐ$file^^@۰@@#@@^^@@C@O@@^r@@C@P@డS!!}^@@+!a@@@@3@@2@@1'%field0AA@@@@@6@@@@@iC@A@@@ED@hD@S@@@U@@T @@R@@ఐ^,active_files33@H44@@]@@@\E@gE@]@@=@@@@K>@@C@D@@A@@^@KBA@~A@lI@A@F@FE@\@ఠ+remove_file;aCG@@y!@@@C@C@<@@ภ%false Lz R jA@; }@@@@B@@A @@ @D@@/C@K@@G@@\L@OHA@iA@O@A@L@LK@]@ఠ)main_loopg b}   c}  @ uSA@@@@@@A@@@n@@@A@@@A@3 q p p q q q q q@}@@@@@࣠@qAĠѰ }   }  @@@@@3        @* }   P  @@@@@  @@@ఠ'finallyi ~   ~  @ TA@@@@@@D@@@@@@0D@@@D@&@@ఠ)old_statej      @ UA@@@@@E@9@డ 1ޠ      @ް@@@ E@ @@@ @@ @@ N@@ఐA2continue_main_loop   @@@ @@@F@F@b@@" @@c@A@    @@࣠@EkAĠD @   @  @C@@@@W3        @tIB@C@D@@@@@@డ p @   @  !@@@@ Hj@@@5F@#@@@%@@$@ @@"M@@@!@@ @@$@@ఐ2continue_main_loop (@   )@  @.@@ i!@@@3G@6G@49@@ఐ)old_state =@  " >@  +@C@@/G@7H@@@@I@ D@  @@D@:M@] @@@A@ I~   @@డ #Fun'protect YB 1 5 ZB 1 8@  ]B 1 9 ^B 1 @@@=@@=@;@@@Y@@X:@@@W@@V@@U@@@@@T@@S C@P@@R@@Q@@O@@N3 w v v w w w w w@@@@@@[ఐ'finally B 1 B B 1 I@ @@@@@@z@@y@@@x@@w@@> @@@@@@@l@@k(@@j@@i(@@h&@@࣠@pAĠ B 1 Q B 1 S@@@@@@@@3        @:@@@@@@ డ , C W p C W r@@@@ &@@@G@@@@@@@ @@ @@@@@@@^@@ఐF2continue_main_loop C W ] C W o@@@ %!@@@H@H@s@@ภ* C W s C W w@)@@@-H@@@@@@@@G@@ డ u"$ D y  D y @"@@@ M @@@F@F@@@@@@ @@@@ఐ2continue_main_loop )D y @.@@ i@@@G@G@@@( @@@@@ఠ%inputl DF   EF  @ WVA@@$listK$Unix*file_descr@@@@@@H@@@@ ]F   ^F  @@@@@@@@H@@@@ mF   nF  @@'%@@@@@@H@@@ zF   {F  @@@8@#@@@@డ &select G   G  @@JH@@@@@@@@@VT@@@@@@@@@b`@@@@@@@@@%floatD@@@@@@xu@@@~@@@}@j~@@@@@@@c@@@@@@@@|@@{@@z@@y@@x@(unix.mliDF M@@@TS@@@Q@@@@@@@@@P@@@@@@@@@O@@@@@@@@@N@@@@@@à@@@@@@Р@@@@@@@Ҡ@@@@@@@@@@@@@@@@@p@@డ $List#map 6G   7G  @  :G   ;G  @@@@!a@@@!b@@@@@@q@@@@@v@@@@@@@@_`@@^W@+&@@@@@%@@@I@PI@FI@0@@@ @@@K@@J @@@I@@H@ @@@L@@GI@3@@6I@@@ I@@@@@@B.@@@@@A @@@@@@@@@డ #fst G   G  @@@@F@@- @@,J@4@@డ # Р Ұ G   G  @ а@@@ vb@@@*J@NJ@9@@@;@@: @@8@@ఐ ,active_files G  @ @@ @@@BK@MK@C+@@( @@,@@ G   G  @@Uw@@@I@OJ@(7@@ภ Ȱ G   G  @ @@@Z@@@ @@@ I@VK@@ภ ܰ G   G  @ @@@b@@@ @@@ I@]_@@#-1.G  G  @@k@@@I@`I@_p@@ @@@堠@Р@@@aI@{@A@2F  @@డ $List$iter@I  AI  @ DI  EI  $@@@@!a@@@$unitF@@@@@@@@ }@@@@@@@@@@@@@ j k@@ iU@,'@@@@ @@@G@h@@l%@@@k@@j@@i@"@@@g@@f!@@@e@@d@@c3@ IB@C@D@@@@@ఠ"fdmJ % =J % ?@WA@@(@@@@@ఠ%functnK C YK C ^@XA@@@ @@@@@ @@@@@J@3@4(I@"@#@@@@ఠ&iochanoK C `K C f@YA@@ @@@J@@@K C XK C g@@@'@@@@డ I$List%assocK C kK C o@ K C pK C u@@ @@@|G@@@@ @ @@X@?@@J@J@@@@@@@@ @@@@O@@ఐ{"fdK C vK C x@Y@@\@@డ  7 9!K C y"K C z@ 7@@@ bD@F@:@@@@@K@K@@@@@@@@@@ఐ ,active_files"DK C @ o$@@ "@@@L@L@@@. @@$@@PK C jQK C @@T@A@SK C T@@ఐ%funct]L  ^L  @@@@@@ ~@@@@@ |@@@@@3feefffff@@@@@@@ఐ&iochanyL  zL  @ @@ @@@J@J@@@' @@2@@@J@@7@@6@@@@@AJ % 4@@@J % 3L  @@@&@@F@@@@@~H@H@3@@@@@ఐd%inputM  M  @!@@Q>@@@|H@H@,@@t @@ @@@G@z@@@@Ġ*Unix_errorO  O  @;*Unix_error#exnG@@@ @}%error@@@ Ҡ&stringQ@@@ Ӡ@@@ @C@@A&_none_@@A@@F@Ġ%EINTRO  O  @;%EINTR"@@@ @@@KDA@Ax  x  @@@L@@@  @@+@@@E@@O  O  @@-@@@M@@O  O  @@.@@@U@@@J O  @@ @@@Z@@@ภbO  O  @a@@@fG@d@@@E  @@hf@D y @@h@;@@i@ B 1 M@@@{@@@@@@@D@D@v@@@@w@@@@A@A@@A@@@@ఠ*interactifr=U E I>U E S@PZA@@}@@@A@@@@A@3GFFGGGGG@@@@@@డ#refXU E VYU E Y@U@@@@@@@@@@@@ภkU E ZlU E ^@@@@(B@$@@@@.%@A@rU E E@@@(@ఠ.current_promptsW ` dW ` r@[A@@}@@@A@ @@@A@3@CWP@Q@R@@@డ#refW ` uW ` x@@@@@@ ۠@@@ @@ @@ W ` z@@W ` yW ` {@@'#@@@@-$@A@W ` `@@@'@ఠ,user_channeltZ  Z  @\A@@ A@@@"A@@@@ A@3@BVO@P@Q@@@డC#refZ  Z  @ذ@@@@@@@@@@@@డI&std_ioZ  Z  @ i@@@@ QC   RC  @@ kP@  @@0,@@! @@6-@A@Z   @@@0@ఠ/read_user_inputu \   \  @]A@@@%bytesC@@@mA@$@@%@#intA@@@iA@*@@+@@@gA@,@@-A@&@@'A@#3+**+++++@bvo@p@q@@@࣠@&bufferwA>\  ?\  @Q^A@@.3=<<=====@=F\  G^  !@@@@@  @@&lengthxAR\  S\  @e_A@@43QPPQQQQQ@!E@@@@@@@@ ఐ)main_loopf]  g]  @@@@@@@5@@4 k@@@3@@23nmmnnnnn@*T@!@"@@@@ภ˰~]  ]  @@@@@@@>E@B@@!@@ @@@CD@<@డ%input^  ^  @@*in_channel@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@0''0'[@@@*)@@@'@@@Q@@P@@@@O@@N@%@@@M@@L@@@@K@@J@@@I@@H@@G@@F@@Ek@@డT^  ^  @@@@,o@@@@~E@s@@@u@@t@@r@@ఐG,user_channel^  @ְ@@G@@@|F@F@}@@' @@@%io_in^  ^  @}.@@@@@oD@D@@@ఐ&buffer*^  +^  @԰@@@@@4^  5^  @@@@@kD@D@@@ఐ&lengthG^  @Ӱ@@'@@@@@@@@A@>A@ @A@ @ @@ఠ/stop_user_inputyZa B F[a B U@m`A@@@ @@@A@@@@@@A@@@A@3ihhiiiii@?jc@d@e@@@࣠@ {AĠ ɰ|a B V}a B X@ @@@@3zyyzzzzz@*a B Bb [ v@@@@@  @@ఐU+remove_fileb [ ]b [ h@ @@@ @@@@@@@@@@@@డb [ ib [ j@@@@,@@@D@D@@@@@@@@;@@ఐ,user_channel@@A@@@@@E@E@N@@&J@@O@@?K@@dP@TLA@rA@S@A@P@PO@e@ఠ1resume_user_input|e  e  @aA@@@ M@@@A@@@ @@@A@@@A@3@@@@@@࣠@ NAĠ Me  e  @ L@@@@3@*e  l@@@@@  @@డ~#notf  f  @@$boolE@@@O@@N@@@M@@L(%boolnotAA@@@LLLt@@d\@@@@@@@@@@@@@@7@@డ$List)mem_assocJf  Kf  @ Nf  Of  @@@!a@@@n@}@@!b@@@m@@@l@@k$boolE@@@j@@i@@h@v::w:;@@u|@.)@@@@@@D@@@@'@@@@@@@@@@@@@@@@@@ @@D@@@@@@@@7@@@@@@@@@డʠ̰f  f  @ʰ@@@8@@@@F@@@@@@@@@@ఐ,user_channelf  @@@@@@G@G@@@' @@@%io_fdf  f  @Y.@@d@@డVf  f  @@@@.@@v@@@@@E@ E@@@@@@@@@@ఐP,active_files"f  @;$@@P"@@@F@ F@@@. @@$@@f  f  @@@@@@ E@"@@ @@@@@D@(@ డ"&&8g 9g @@"@@@V@@U@*@@@T@@S.@@@R@@Q@@P(%sequandBA=@@@@=>@@]@! @@@@@@@@@@@@@@@@@@@@@g@@డug vg @@@@D@@@'E@7E@*@@@,@@+@@)@@ఐT*interactifg  @@@Ѡ@@@3F@6F@4@@' @@@@డg g @@@@n@@@%E@E@:@@@<@@;@@9@@డ*Parameters&prompt*Parameters!g @ g g #@'@&Stdlib#ref$boolE@@@p@@@o@7debugger/parameters.mliX<<X<Q@@*ParametersE@>@@$<@@@CF@F@@@H"@@>@@{#@@@@@E@#@ డh,print_stringh/5h/A@@&stringQ@@@@@?@@@@@@1qq1qr@@J@@@@@@@@@@@@@@@@డAC+h/B,h/C@A@@@l2@@@F@F@@@@@@@@:@@ఐȠ.current_promptGh/Q@w@@@@@G@G@N@@' @@O@@S @@P@@@E@U@డ%flushaiSYbiS^@@+out_channel@@@b@@a@@@`@@_@Zjj[j@@@@@@@@@@@@@@@@}@@డ&stdout&StdlibiS_iSe@ iSfiSl@@.@@@@%pp%pp@@@ @@:@@@E@E@@@E@@@@@D@E@@g )jmv@@ @@g  @@ @ఐ(add_filekx|kx@l@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@డJkxkx@@@@"@@@D@D@@@@@@@@@@ఐ=,user_channelkx@̰@@=@@@E@E@@@' @@@@ఐ +.exit_main_loopkxkx@ @@@4@@@D@@@P@@@@@@@g@@5D@!@%f  @@#@@'f   @@%@)!A@GA@(@A@%@%$@:@rX@@@@|@ @  >@ Y @ @@q@@@@T@pi@j@k@@3FEEFFFFF@Zs@@@o.Input_handlingK@@J@@JI@@ H@@۱ G@@ F@@ E@@ |D@@C@@B@@1A@@ı"@@@ H************************************************************************vA@@wA@L@ H |BMM}BM@ H OCaml CC@ H DD3@ H Jerome Vouillon, projet Cristal, INRIA Rocquencourt E44E4@ H OCaml port by John Malecki and Xavier Leroy FF@ H GG@ H Copyright 1996 Institut National de Recherche en Informatique et HHg@ H en Automatique. IhhIh@ H JJ@ H All rights reserved. This file is distributed under the terms of KKN@ H the GNU Lesser General Public License version 2.1, with the LOOLO@ H special exception on linking described in the file LICENSE. MM@ H NN5@ H************************************************************************O66O6@ E*************************** Input control ***************************QQ@4** Actives files. **VV@< List of the actives files. XX$@ * Add a file to the list of actives files. \~~\~@ / Remove a file from the list of actives files. ``B@ + Change the controller for the given file. dd@ = Return the controller currently attached to the given file. hh_@ : Execute a function with `controller' attached to `file'. ll@; ### controller file funct mm @5** The "Main Loop" **tt @ : Handle active files until `continue_main_loop' is false.  | q q | q @:** Managing user inputs **R  R  @> Are we in interactive mode ? T " "T " D@ ! Where the user input come from. Y } }Y } @: Stop reading user input. $` # #%` # A@< Resume reading user input. *d x x+d x @@#(./ocamlc)-nostdlib"-I(./stdlib"-g0-strict-sequence*-principal(-absname"-w8+a-4-9-40-41-42-44-45-48+-warn-error"+a*-bin-annot/-strict-formats)-for-pack*ocamldebug"-I(debugger"-I%utils"-I'parsing"-I&typing"-I(bytecomp"-I,file_formats"-I&lambda"-I*middle_end"-I2middle_end/closure"-I2middle_end/flambda"-I=middle_end/flambda/base_types"-I'asmcomp"-I&driver"-I(toplevel"-I%tools"-I'runtime"-I1otherlibs/dynlink"-I-otherlibs/str"-I4otherlibs/systhreads"-I.otherlibs/unix"-I8otherlibs/runtime_events"-I.otherlibs/unix"-I1otherlibs/dynlink"-I.otherlibs/unix"-I1otherlibs/dynlink"-I.otherlibs/unix"-I1otherlibs/dynlink"-cst 9/builds/workspace/main/flambda/false/label/ocaml-linux-32 J=<;:9876543210/.-,+*)('&%$#@@0mzžFO6>3@@@8CamlinternalFormatBasics0|.e1R$|o0$šcaԭJܐ0x.7I0f 歄!iO:&Stdlib0t0VoS%{<F:0Stdlib__Bigarray081}wJf֠/Stdlib__Complex0e<9r@fǠ.Stdlib__Either0HD ?|>+Stdlib__Fun0zLQ=O(KC%,Stdlib__List0C|Z`>s䠠+Stdlib__Seq0?72#[O+Stdlib__Sys0b'8=OInՐ0eE Gڿ,ᙯ@@AVCMW@ v   KU]g@  F K U@@(2  @ 5 ?@PZ@ H3=@@@@@@ȰR\@@@@P@c@`@@@A@@@@@@@@A@@@@BC5@2@@@@@@@A @ @@@@@@@AB@@@@T@Q@@@A@@@@Bx@u@@@CDE@@