package hack_parallel
Parallel and shared memory library
Install
Dune Dependency
Authors
Maintainers
Sources
1.0.1.tar.gz
md5=ba7c72bc207e326b72e294fc76f6ad2c
sha512=5020d47f97bea2f88e2a40411894d03232a7f2282606926c93c7d4c96d72e94a966be852897a9b16f7e0893ba376512045abb9d93020a7c03c3def4f3d918f8e
doc/src/hack_parallel.utils/handle.ml.html
Source file handle.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
(** * Copyright (c) 2015, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * *) (* On Win32, unwrap the handle from the 'abstract block' representing the file descriptor otherwise it can't be marshalled or passed as an integer command-line argument. *) type handle = int external raw_get_handle : Unix.file_descr -> handle = "caml_hh_worker_get_handle" "noalloc" external raw_wrap_handle : handle -> Unix.file_descr = "caml_hh_worker_create_handle" external win_setup_handle_serialization : unit -> unit = "win_setup_handle_serialization" let init = (* Windows: register the serialize/desarialize functions for the custom block of "Unix.file_descr". *) lazy begin win_setup_handle_serialization () end let () = Lazy.force init let () = assert (Sys.win32 || Obj.is_int (Obj.repr Unix.stdin)) let get_handle = if Sys.win32 then raw_get_handle else Obj.magic let wrap_handle = if Sys.win32 then raw_wrap_handle else Obj.magic let to_in_channel h = wrap_handle h |> Unix.in_channel_of_descr let to_out_channel h = wrap_handle h |> Unix.out_channel_of_descr
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>