package cstruct
access C structures via a camlp4 extension
Install
Dune Dependency
Authors
Maintainers
Sources
v1.0.0.tar.gz
sha256=2d30307f8ad199a649374d2c0ee8cad4d06632dece87eee35458ad6b332bde87
md5=5ad3707383ff67953e5ace502d2ece2c
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.
An example pcap description is:
cstruct pcap_header { uint32_t magic_number; (* magic number ) uint16_t version_major; ( major version number ) uint16_t version_minor; ( minor version number ) uint32_t thiszone; ( GMT to local correction ) uint32_t sigfigs; ( accuracy of timestamps ) uint32_t snaplen; ( max length of captured packets, in octets ) uint32_t network ( data link type *) } as little_endian
Dependencies (5)
-
ocamlbuild
build & != "0.9.0"
- camlp4
- ocplib-endian
- ocamlfind
-
ocaml
< "4.06.0"
Dev Dependencies
None
-
albatross
< "1.3.0"
-
angstrom
< "0.7.0"
-
asn1-combinators
= "0.2.0"
- balancer
- buffer-pool
-
capnp-rpc-net
>= "1.1" & < "1.2.1"
- channel
-
charrua-client
< "0.9"
-
charrua-core
< "0.3"
-
charrua-unix
< "0.3" | = "0.6"
-
cohttp
>= "0.9.7" & < "0.9.13"
-
conduit-async
= "3.0.0"
-
conduit-lwt
= "3.0.0"
-
crunch
>= "2.0.0" & < "3.0.0"
-
cstruct-lwt
< "3.0.0"
-
cstruct-unix
< "3.0.0"
-
datakit-ci
>= "0.10.0" & < "0.12.4"
-
datakit-client
< "0.9.0"
-
datakit-server
< "0.9.0"
-
depyt
< "0.3.0"
-
dream
< "1.0.0~alpha2"
-
duff
< "0.3"
-
fat-filesystem
< "0.7.0"
-
frenetic
< "2.0.0"
-
git
>= "1.4.3" & < "1.6.0" | >= "2.0.0" & < "3.0.0"
-
git-http
< "1.11.0"
-
git-mirage
= "1.11.0"
-
github-hooks
>= "0.2.0"
-
gluten-mirage
< "0.3.0"
- gpt
- h2-mirage
-
hacl-star
>= "0.7.0"
- httpun-mirage
- httpun-ws-mirage
-
hvsock
< "1.0.0"
-
io-page-unix
< "2.0.0"
-
io-page-xen
< "2.0.0"
-
ipaddr-cstruct
< "5.2.0"
-
irmin
= "0.9.0"
-
irmin-git
>= "2.3.0"
- launchd
-
letsencrypt
= "0.2.5"
-
letsencrypt-app
< "0.4.0"
-
macaddr-cstruct
< "5.2.0"
- metrics-mirage
-
mirage
>= "0.7.2" & < "0.9.1"
-
mirage-block
< "1.0.0"
- mirage-block-ramdisk
-
mirage-block-unix
< "1.2.1"
-
mirage-block-xen
< "1.0.0"
- mirage-channel-lwt
-
mirage-clock-unix
< "1.0.0"
-
mirage-clock-xen
< "1.0.0"
-
mirage-console-solo5
>= "0.2.0"
-
mirage-console-unix
< "2.3.2"
-
mirage-console-xen
= "4.0.0"
-
mirage-console-xen-backend
>= "2.3.2" & < "2.3.4" | = "4.0.0"
- mirage-console-xen-cli
-
mirage-dns
< "2.6.0"
-
mirage-entropy
< "0.5.0"
-
mirage-flow
< "1.2.0"
-
mirage-flow-rawlink
>= "1.1.0"
-
mirage-fs
>= "0.4.0" & < "1.0.0"
- mirage-fs-mem
-
mirage-fs-unix
< "1.1.3"
-
mirage-kv-lwt
>= "2.0.0"
-
mirage-nat
< "2.2.4"
-
mirage-net
= "0.5.2"
- mirage-net-lwt
-
mirage-net-unix
< "1.1.0"
-
mirage-profile
< "0.7.0"
-
mirage-qubes
< "0.3"
- mirage-tc
-
mirage-unix
< "0.9.9"
-
mirage-vnetif
< "0.4.0"
-
mirage-www
< "0.4.0"
-
mirage-xen
< "0.9.9"
- monorobot
-
mstruct
< "1.3.1"
-
nbd
= "0.9.2"
- noise
-
openflow
< "0.3.0"
-
ox
< "1.1.0"
-
packet
< "0.2.1"
-
pbkdf
= "1.1.0"
-
pcap-format
= "0.3.3"
- pcf-format
-
ppx_cstruct
< "3.0.1"
-
protocol-9p
< "0.5.1"
-
protocol-9p-tool
= "0.12.0" | >= "2.0.0" & < "2.0.2"
-
qcow
< "0.11.0"
- qcow-format
- qcow-tool
-
resp-mirage
= "0.10.0"
-
sendmail
>= "0.4.1" & < "0.5.0"
-
shared-block-ring
< "2.3.0"
-
shared-memory-ring
< "1.2.0"
- slack
- ssh-agent
-
tar-format
>= "0.2.0" & < "0.5.0"
-
u2f
= "0.1.1"
-
vchan
< "0.9.6"
-
vhd-format
< "0.7.0"
- vhd-format-lwt
-
vhd-tool
< "0.7.1"
-
websocket
= "2.2"
- xapi-rrd-transport
- xe
-
xen-block-driver
>= "0.2.5"
-
xenstore
>= "1.2.0" & < "1.3.0"
- xentropyd
Conflicts (1)
-
async
>= "v0.10.0"
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page