[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: cstruct 0.8.0; anything else before 1.0?
Would be nice to have a mutable interface at one point (I've started different design in Cagit[1] and Irminsule[2] already, not totally sure yet what's the best interface). I tend to prefer [2] where the mutable buffer type is defined as 'type t = { mutable buffer: Cstruct.t }' [1] https://github.com/samoht/cagit/blob/master/src/lib/IO.ml [2] https://github.com/samoht/irminsule/blob/master/src/irminIO.ml On Oct 13, 2013, at 12:10 PM, Anil Madhavapeddy <anil@xxxxxxxxxx> wrote: > I've gone through the outstanding cstruct issues and fixed most of them: > > 0.8.0rc1 (13-Oct-2013): > * Improved ocamldoc for BE/LE modules. > * Add Travis-CI test scripts and fix `test.sh` script compilation. > * Support int32/int64 constant values in cenum like `VAL = 0xffffffffl`, > useful for 32-bit hosts. > * Check and raise error in case of negative offsets for blits (#4). > * Correctly preserve the sequence after a constant constructor is set during > a `cenum` definition. > * Do not repeat the `sizeof_<field>` binding for every get/set field (should > be no externally observable change). > * Add `Cstruct.hexdump_to_buffer` to make spooling hexdump output easier. > * Generate `hexdump_foo` and `hexdump_foo_to_buffer` prettyprinting functions > for a `cstruct foo`. > > Arjun, this should fix your 32-bit host problem, but you need to ensure that > you use the correct literals so that the OCaml lexer doesn't complain (i.e. > 0xffffffffl instead of 0xffffffff). > > I've also added a handy set of hexdump functions to prettyprint cstructs, and > improved the README to describe the functions involved. > > Mort, I've been through your issues about the iter/fold, but the only real > use-case right now is the pcap parser. Most of the other call sites just > handle individual packets, so I've got no strong opinion on this. I'll leave > those for you to drive with examples uses... > > Other than that, I'd like to have the extension also emit ctypes values, so > that it can be used in stub-generation and other interactions with C > libraries. That will be post 1.0 though, so I'll tag this current featureset > as 1.0 if noone's got any showstoppers. > > -anil
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |