package albatross
Albatross - orchestrate and manage MirageOS unikernels with Solo5
Install
dune-project
Dependency
Authors
Maintainers
Sources
albatross-2.6.0.tbz
sha256=95335cd203ba8f4b47a0fa2135ae2adc677c5a09a9e85bf729800eeb78f79de6
sha512=5661030612576a2941f57935cf9ceaf04b859e58cd6e70cc1372a9491b85ddaa17e3773c27df5c072fc166533f66ee0663fd52b2e1c4451f1e119dda26ebbac9
doc/src/albatross/vmm_compress.ml.html
Source file vmm_compress.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
let compress ~level input = let w = De.Lz77.make_window ~bits:15 in let q = De.Queue.create 0x1000 in let i = Bigstringaf.create De.io_buffer_size in let o = Bigstringaf.create De.io_buffer_size in let b = Buffer.create 0x1000 in let pos = ref 0 in let refill i = let len = min (Bigstringaf.length i) (String.length input - !pos) in Bigstringaf.blit_from_string input ~src_off:!pos i ~dst_off:0 ~len ; pos := !pos + len ; len in let flush o len = let str = Bigstringaf.substring o ~off:0 ~len in Buffer.add_string b str in Zl.Higher.compress ~level ~w ~q ~refill ~flush i o ; Buffer.contents b let uncompress input = let w = De.make_window ~bits:15 in let allocate _ = w in let i = Bigstringaf.create De.io_buffer_size in let o = Bigstringaf.create De.io_buffer_size in let b = Buffer.create 0x1000 in let pos = ref 0 in let refill i = let len = min (Bigstringaf.length i) (String.length input - !pos) in Bigstringaf.blit_from_string input ~src_off:!pos i ~dst_off:0 ~len ; pos := !pos + len ; len in let flush o len = let str = Bigstringaf.substring o ~off:0 ~len in Buffer.add_string b str in match Zl.Higher.uncompress ~allocate ~refill ~flush i o with | Ok () -> Ok (Buffer.contents b) | Error _ as e -> e
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>