12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061(*
* Copyright (C) 2011-2013 Citrix Inc
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published
* by the Free Software Foundation; version 2.1 only. with the special
* exception on linking described in file LICENSE.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*)moduletypeASYNC=sigtype'atval(>>=):'at->('a->'bt)->'btvalfail:exn->'atvalreturn:'a->'atendmoduletypeTIME=sigvalnow:unit->int32endmoduletypeRW=sigincludeASYNCtypehandlevalreally_read:handle->int64->Cstruct.t->unittvalreally_write:handle->int64->Cstruct.t->unittendmoduletypeFILE=sigincludeTIMEtypefdincludeRWwithtypehandle:=fdvalexists:string->booltvalopenfile:string->bool->fdtvalfsync:fd->unitvalcreate:string->fdtvalclose:fd->unittvalget_file_size:string->int64tvalget_modification_time:string->int32tvallseek:fd->int64->Unix.seek_command->int64tvallseek_data:fd->int64->int64tvallseek_hole:fd->int64->int64tendmoduletypeINPUT=sigincludeASYNCtypefdvalread:fd->Cstruct.t->unittvalskip_to:fd->int64->unittend