git.annexia.org
/
ocaml-bitstring.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
More complete handling of constant field length expressions.
[ocaml-bitstring.git]
/
bitmatch.mli
diff --git
a/bitmatch.mli
b/bitmatch.mli
index
a8fd8ba
..
90f6acc
100644
(file)
--- a/
bitmatch.mli
+++ b/
bitmatch.mli
@@
-29,7
+29,7
@@
this module to both parse and generate binary formats, for
example, communications protocols, disk formats and binary files.
this module to both parse and generate binary formats, for
example, communications protocols, disk formats and binary files.
- {{:http://
et.redhat.com/~rjones
/bitmatch/}OCaml bitmatch website}
+ {{:http://
code.google.com/p
/bitmatch/}OCaml bitmatch website}
{2 Examples}
{2 Examples}
@@
-186,7
+186,7
@@
let make_message typ subtype param =
match then the standard library [Match_failure] exception is
thrown.
match then the standard library [Match_failure] exception is
thrown.
- Patterns look a bit different from normal match patterns. The
+ Patterns look a bit different from normal match patterns. The
y
consist of a list of bitfields separated by [;] where each bitfield
contains a bind variable, the width (in bits) of the field, and
other information. Some example patterns:
consist of a list of bitfields separated by [;] where each bitfield
contains a bind variable, the width (in bits) of the field, and
other information. Some example patterns:
@@
-381,9
+381,8
@@
Bitmatch.hexdump_bitstring stdout bits ;;
computed expression.
Detection of compile-time constants is quite simplistic so only an
computed expression.
Detection of compile-time constants is quite simplistic so only an
- immediate, simple integer is recognised as a constant and anything
- else is considered a computed expression, even expressions such as
- [5-2] which are obviously (to our eyes) constant.
+ simple integer literals and simple expressions (eg. [5*8]) are
+ recognized as constants.
In any case the bit size of an integer is limited to the range
\[1..64\]. This is detected as a compile-time error if that is
In any case the bit size of an integer is limited to the range
\[1..64\]. This is detected as a compile-time error if that is