Access C-like structures directly from OCaml

Description

Cstruct is a library and syntax extension to make it easier to access C-like structures directly from OCaml. It supports both reading and writing to these structures, and they are accessed via the Bigarray module.

Tags

org:mirage org:ocamllabs

Published: 19 Jul 2020

Dependencies (4)

  1. alcotest with-test
  2. bigarray-compat
  3. dune >= "2.0.0"
  4. ocaml >= "4.03.0"

Reverse Dependencies (205)

  1. albatross < "1.3.0"
  2. angstrom >= "0.2.0" & < "0.7.0"
  3. arakoon >= "1.8.6" & < "1.8.12"
  4. arp >= "0.2.1" & < "3.0.0"
  5. arp-mirage
  6. asn1-combinators >= "0.2.0-1" & < "0.2.6"
  7. awa < "0.0.4"
  8. awa-lwt < "0.0.4"
  9. awa-mirage < "0.0.4"
  10. balancer
  11. bip32
  12. buffer-pool
  13. capnp-rpc-net >= "1.1" & < "1.2.1"
  14. carton < "0.4.3"
  15. certify >= "0.2"
  16. chacha < "1.1.0"
  17. channel
  18. charrua < "1.4.1"
  19. charrua-client < "1.4.1"
  20. charrua-client-lwt
  21. charrua-client-mirage < "0.12.0"
  22. charrua-server < "1.4.1"
  23. charrua-unix = "0.6"
  24. cohttp >= "0.9.7" & < "0.10.0"
  25. colombe < "0.2.0"
  26. conduit >= "0.6.0" & < "0.15.2"
  27. conduit-async = "3.0.0"
  28. conduit-lwt = "3.0.0"
  29. conduit-mirage != "3.0.0"
  30. conex < "0.10.0"
  31. conex-mirage-crypto
  32. conex-nocrypto >= "0.11.0"
  33. cowabloga >= "0.0.5"
  34. crc
  35. crunch >= "2.0.0" & < "3.0.0"
  36. cstruct-async >= "3.4.0" & < "4.0.0" | = "5.2.0"
  37. cstruct-lwt >= "3.4.0" & < "4.0.0" | = "5.2.0"
  38. cstruct-sexp = "5.0.0" | = "5.2.0"
  39. cstruct-unix >= "3.1.0" & < "3.2.0" | >= "3.4.0" & < "4.0.0" | = "5.2.0"
  40. current_git = "0.5"
  41. current_github >= "0.4"
  42. current_web >= "0.4"
  43. datakit
  44. datakit-ci >= "0.12.4"
  45. datakit-client
  46. datakit-client-9p
  47. datakit-server
  48. depyt >= "0.2.0"
  49. dns >= "1.0.0" & < "6.0.0"
  50. dns-client < "6.0.0"
  51. dns-forward >= "0.9.0"
  52. dnssd
  53. dream < "1.0.0~alpha2"
  54. duff < "0.3"
  55. eqaf >= "0.8"
  56. ethernet < "2.2.1"
  57. fat-filesystem >= "0.13.0" & < "0.15.1"
  58. fiat-p256
  59. frenetic < "2.0.0" | >= "3.2.0" & < "5.0.0"
  60. git >= "2.0.0" & < "3.5.0"
  61. github-hooks >= "0.2.0"
  62. gluten-mirage < "0.3.0"
  63. h2-mirage
  64. hacl_x25519
  65. hex >= "1.4.0"
  66. hkdf
  67. hvsock < "3.0.0"
  68. io-page
  69. io-page-unix
  70. io-page-xen
  71. ipaddr-cstruct < "5.2.0"
  72. ipv6-multicast >= "0.9"
  73. irmin >= "0.9.0" & < "1.0.0" | >= "1.1.0" & < "2.0.0"
  74. irmin-git >= "2.3.0"
  75. irmin-indexeddb >= "0.3"
  76. jose < "0.7.0"
  77. key-parsers >= "0.5.0" & < "1.2.1"
  78. launchd
  79. learn-ocaml-client
  80. ledgerwallet < "0.2.0"
  81. letsencrypt = "0.2.5"
  82. letsencrypt-app < "0.4.0"
  83. macaddr-cstruct < "5.2.0"
  84. memtrace_viewer < "v0.15.0"
  85. metrics-mirage
  86. mirage >= "0.7.2" & < "0.9.0" | >= "0.10.0" & < "2.4.0"
  87. mirage-block >= "2.0.0"
  88. mirage-block-ccm < "1.1.0"
  89. mirage-block-combinators < "3.0.0"
  90. mirage-block-lwt
  91. mirage-block-ramdisk
  92. mirage-block-solo5 < "0.6.2"
  93. mirage-block-unix = "2.0.0" | = "2.7.0" | >= "2.11.1" & < "2.13.0"
  94. mirage-block-xen >= "1.4.0" & < "1.5.2" | >= "1.6.0" & < "2.1.1"
  95. mirage-btrees
  96. mirage-channel >= "4.0.0" & < "4.1.0"
  97. mirage-channel-lwt
  98. mirage-clock-unix < "1.0.0"
  99. mirage-clock-xen < "1.0.0"
  100. mirage-conduit < "2.0.0" | >= "2.3.1"
  101. mirage-console >= "3.0.0" & < "4.0.0"
  102. mirage-console-lwt
  103. mirage-console-solo5 >= "0.2.0"
  104. mirage-console-unix >= "2.2.1" & < "5.0.0"
  105. mirage-console-xen = "4.0.0"
  106. mirage-console-xen-backend >= "2.3.2" & < "2.3.4" | = "4.0.0"
  107. mirage-crypto < "0.10.4"
  108. mirage-crypto-ec < "0.10.4"
  109. mirage-crypto-entropy
  110. mirage-crypto-pk < "0.10.4"
  111. mirage-crypto-rng < "0.10.4"
  112. mirage-crypto-rng-mirage
  113. mirage-dns != "2.6.0" & < "2.7.0"
  114. mirage-entropy
  115. mirage-entropy-xen < "0.3.0"
  116. mirage-flow < "1.2.0" | >= "2.0.0"
  117. mirage-flow-combinators < "3.0.0"
  118. mirage-flow-lwt
  119. mirage-flow-rawlink
  120. mirage-flow-unix < "3.0.0"
  121. mirage-fs >= "0.4.0" & < "1.0.0" | >= "3.0.0"
  122. mirage-fs-lwt
  123. mirage-fs-mem
  124. mirage-fs-unix < "1.1.0" | >= "1.4.0" & != "1.5.0"
  125. mirage-kv-lwt
  126. mirage-kv-unix
  127. mirage-nat < "2.2.4"
  128. mirage-net = "0.5.2" | >= "3.0.0"
  129. mirage-net-fd
  130. mirage-net-lwt
  131. mirage-net-macosx
  132. mirage-net-solo5
  133. mirage-net-unix < "2.1.0" | >= "2.2.1"
  134. mirage-net-xen != "1.4.2" & != "1.7.0" & < "2.1.0"
  135. mirage-profile >= "0.8.2"
  136. mirage-protocols-lwt
  137. mirage-qubes != "0.2" & < "0.5" | >= "0.7.0" & < "0.9.2"
  138. mirage-qubes-ipv4 < "0.9.3"
  139. mirage-random
  140. mirage-random-stdlib
  141. mirage-random-test
  142. mirage-solo5
  143. mirage-stack-lwt
  144. mirage-tc
  145. mirage-tcpip-unix
  146. mirage-tcpip-xen
  147. mirage-types-lwt < "3.7.1"
  148. mirage-unix < "0.9.4" | >= "2.5.0" & < "3.0.8"
  149. mirage-vnetif < "0.6.0"
  150. mirage-www < "0.4.0" | >= "1.1.0"
  151. mirage-xen < "2.0.0" | >= "2.6.0"
  152. monorobot
  153. mrt-format >= "0.3.1"
  154. mstruct
  155. nbd = "4.0.3"
  156. netchannel < "2.1.0"
  157. nocrypto < "0.4.0" | >= "0.5.4-1"
  158. noise
  159. openflow < "0.2.0"
  160. otr = "0.3.1" | >= "0.3.5" & < "0.3.9"
  161. ox < "1.1.1"
  162. pbkdf < "0.3.0" | = "1.1.0"
  163. pcap-format >= "0.5.2"
  164. pf-qubes
  165. plebeia < "2.0.0"
  166. ppx_cstruct = "5.2.0"
  167. protocol-9p = "2.0.1"
  168. protocol-9p-tool = "0.12.0" | >= "2.0.0" & < "2.0.2"
  169. protocol-9p-unix < "2.0.2"
  170. qcow >= "0.11.0"
  171. qcow-tool
  172. randomconv
  173. rawlink >= "0.6" & < "1.2"
  174. resp-mirage = "0.10.0"
  175. rfc6287 >= "1.0.2"
  176. salsa20 < "1.2.0"
  177. salsa20-core >= "0.3.0" & < "1.1.0"
  178. scrypt-kdf >= "0.2.0" & < "1.2.0"
  179. secp256k1-internal < "0.3.0"
  180. sendmail >= "0.4.1" & < "0.5.0"
  181. shared-block-ring < "3.0.1"
  182. shared-memory-ring >= "3.0.1" & < "3.1.1"
  183. shared-memory-ring-lwt
  184. ssh-agent
  185. tar >= "1.0.0" & < "2.0.0"
  186. tar-mirage
  187. tar-unix != "1.0.0" & < "2.0.0"
  188. tcpip >= "3.3.0" & < "6.3.0"
  189. tezos-lmdb
  190. tls >= "0.10.2" & < "0.14.0"
  191. u2f = "0.1.1"
  192. uecc
  193. vchan >= "3.0.0" & < "6.0.1"
  194. vchan-unix
  195. vchan-xen
  196. vhd-format >= "0.12.0"
  197. vhd-format-lwt
  198. vhd-tool < "0.12.0"
  199. vmnet >= "1.1.0"
  200. x509 >= "0.6.3" & < "0.14.1"
  201. xe
  202. xen-api-client >= "0.9.6" & < "0.9.14"
  203. xen-block-driver >= "0.2.5"
  204. xen-gnt
  205. xenstore >= "2.1.0"

Conflicts (1)

  1. js_of_ocaml < "3.5.0"

Install

Authors

Maintainers

Sources

cstruct-v5.2.0.tbz
sha256=6bfef3753fab08cc638c07ca39f68d629087768f6a5cfeffc519d42018956a75
sha512=4e8cb53801980dacb9c9153bada89557ffcd9afaac262592fe6243bec3e76d5d1cfe3babe133a9a32e35ed00d98a4b54d55403e8505cca6a1328be50fadb5f37