package integers
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Various signed and unsigned integer types for OCaml
Install
dune-project
Dependency
Authors
Maintainers
Sources
0.8.0.tar.gz
sha256=04a1a6d5cc1ecfd3f354a83caed27e59995bb26adec64d88193ccc36268929fa
md5=5155b252a1143ebe7f895003a7103f5e
doc/src/integers.top/install_integer_printers.ml.html
Source file install_integer_printers.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 40(* Adapted from Anil Madhavapeddy's ocaml-uri package. *) let printers = [ "fun fmt v -> Format.fprintf fmt \"<sint %s>\" (Signed.SInt.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<long %s>\" (Signed.Long.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<llong %s>\" (Signed.LLong.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<uchar %s>\" (Unsigned.UChar.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<uint8 %s>\" (Unsigned.UInt8.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<uint16 %s>\" (Unsigned.UInt16.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<uint32 %s>\" (Unsigned.UInt32.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<uint64 %s>\" (Unsigned.UInt64.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<ushort %s>\" (Unsigned.UShort.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<uint %s>\" (Unsigned.UInt.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<ulong %s>\" (Unsigned.ULong.to_string v)"; "fun fmt v -> Format.fprintf fmt \"<ullong %s>\" (Unsigned.ULLong.to_string v)";] let eval_string ?(print_outcome = false) ?(err_formatter = Format.err_formatter) str = let lexbuf = Lexing.from_string str in let phrase = !Toploop.parse_toplevel_phrase lexbuf in Toploop.execute_phrase print_outcome err_formatter phrase let install_printer printer = begin ignore (eval_string (Printf.sprintf "let _printer = %s;;" printer)); ignore (eval_string (Printf.sprintf "#install_printer _printer;;")); end let is_utop () = Hashtbl.mem Toploop.directive_table "utop_help" [@@ocaml.warning "-3"] let () = (* Preload the toplevel environment and integers library if we are in utop. This is done to ensure the required modules are in scope before the printers are installed, as dune will not do this automatically. *) if is_utop () then begin Toploop.initialize_toplevel_env (); ignore (eval_string "#require \"integers\";;"); end; List.iter install_printer printers
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>