Caml1999I037+\.Input_handling(add_file,@*Primitives*io_channel@@@@@ *io_channel@@@$unitF@@@@@@@@@@@@@;debugger/input_handling.mliX((X(a@@(@@@+remove_file-@'*io_channel@@@@@@@@@[[@@@@=@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@AS@@3@@A@(add_file X(,X(4@б@г*io_channelX(7X(A@@ @@@@@б@б@г*io_channelX(FX(P@@ @@@@@гk$unitX(TX(X@@ @@@Ͱ@@@@@а@@г{$unitX(]X(a@@ @@@ݰ@@@@@X(E @@@8@@; @@@X((@@@@@@@+remove_file![[@б@г*io_channel[[@@ @@@3@i@A@@г$unit[[@@ @@@@@@@@@@@[ @@+A@@ @@2current_controller"%^&^@б@г3*io_channel0^1^"@@ @@@321122222@1F@A@@б@гD*io_channelA^'B^1@@ @@@@@г$unitN^5O^9@@ @@@@@@@@!@@@'@@$*Z^:@@@]^@@nB@@@@+=execute_with_other_controller#hbib@б@б@гx*io_channelucvc@@ @@@3wvvwwwww@F[!@A@@г$$unitcc@@ @@@@@@@@@@б@г*io_channelcc@@ @@@ !@@б@б@гG$unitcc@@ @@@!2@@А!a@(A@";cc@@@ @@#@@@А!aDcc@@@ @@$Ic@@@/@@%M2@@@@@@&Pc @@@b@@C@@@@W.exit_main_loop$hJNhJ\@б@А!a@-A@)3@l@AhJ_hJa@@г$unithJehJi@@ @@@*@@@@@+@@@hJJ @@ D@@ @@)main_loop%kk@б@г$unitkk@@ @@@.3@3D@A@@г$unit!k"k@@ @@@/@@@@@0@@@,k @@=E@@ @@*interactif&7p 8p @г#ref@p !Ap $@г$boolJp Kp  @@ @@@13LKKLLLLL@9N'@A@@@ @@@3 @@@Yp  @@jF@@@@ .current_prompt'dr&*er&8@г#refmr&Bnr&E@г:&stringwr&;xr&A@@ @@@43yxxyyyyy@.K'@A@@@ @@@6 @@@r&&@@G@@@@ ,user_channel(umqum}@г#refumum@г*io_channelumum@@ @@@73@.K'@A@@@ @@@9 @@@umm@@H@@@@ /read_user_input)ww@б@г%bytesww@@ @@@:3@&C@A@@б@г#intww@@ @@@;@@г#intww@@ @@@<@@@@@=!@@@'@@>$* @@@w@@I@@@@*/stop_user_input*zz@б@г$unit z z@@ @@@?3        @CX@A@@г$unitzz@@ @@@@@@@@@A@@@%z @@6J@@ @@1resume_user_input+0}  #1}  4@б@г۠$unit;}  7<}  ;@@ @@@B3=<<=====@1F@A@@гꠐ$unitJ}  ?K}  C@@ @@@C@@@@@D@@@U}   @@fK@@ @@@r@kD@=@@h@a:@3@@@y@rK@D@@3mllmmmmm@1F@A@ 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. **UU@ ) Add a file to the list of active files. WW'@ / Remove a file from the list of actives files. ZccZc@ = Return the controller currently attached to the given file. ]]@ : Execute a function with `controller' attached to `file'. `<<`<z@; ### controller file funct a{{a{@5** The "Main Loop" **ee@ / Call this function for exiting the main loop. ggI@ : Handle active files until `continue_main_loop' is false. jkkjk@:** Managing user inputs ** m m@> Are we in interactive mode ? oo @ ! Where the user input come from. tGGtGl@: Stop reading user input. yy@< Resume reading user input. $|%| @@3(./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"-I.otherlibs/unix"-I1otherlibs/dynlink"-cqr 9/builds/workspace/main/flambda/false/label/ocaml-linux-32 NA@?>=<;:9876543210/.-,+*)('&%@@0XᬔkBEgi@@Ր@@@@@m@Ԑ@}@!J@@@;@@@P@@