nom v0.4.0 Release Notes
Release Date: 2015-09-08 // over 8 years ago-
๐ Considering the number of changes since the last release, this version can contain breaking changes, so the version number becomes 0.4.0. A lot of new features and performance improvements!
Thanks
- ๐ @frewsxcv for documentation fixes
- @ngrewe for his work on producers and consumers
- ๐ @meh for fixes on
chain!
and for therest
parser - ๐จ @daboross for refactoring
many0!
andmany1!
- @aleksander for the
switch!
combinator idea - ๐ @TechnoMancer for his help with bit level parsing
- @sxeraverx for pointing out a bug in
is_a!
๐ Fixed
- ๐
count_fixed!
must take an explicit type as argument to generate the fixed-size array - ๐ optional parsing behaviour in
chain!
count!
can take 0 elementsis_a!
andis_not!
can now consume the whole input
โ Added
- ๐ it is now possible to seek to the end of a
MemProducer
- ๐
opt!
returnsDone(input, None)
ifthe child parser returned
Incomplete` rest
will return the remaining input- ๐ consumers can now seek to and from the end of input
- ๐
switch!
applies a first parser then matches on its result to choose the next parser - ๐ bit-level parsers
- ๐ character-level parsers
- ๐ regular expression parsers
- implementation of
take_till!
,take_while!
andtake_while1!
๐ Changed
alt!
can returnIncomplete
- the error analysis functions will now take references to functions instead of moving them
- ๐ performance improvements on producers
- ๐ performance improvement for
filter!
- ๐ performance improvement for
count!
: aVec
of the right size is directly allocated