Commit Graph

561 Commits

Author SHA1 Message Date
mrkkrp
2062354709 Various corrections in ‘README.md’ and docs 2016-05-14 16:59:18 +07:00
mrkkrp
3f445fc8fc Version bump (5.0.0) 2016-05-14 15:43:44 +07:00
mrkkrp
2df1953075 Highlight new features in the ‘README.md’ file 2016-05-12 11:06:03 +07:00
Mark Karpov
b2a3329723 Merge pull request #105 from mrkkrp/line-folds
Line folding
2016-05-11 14:24:32 +07:00
mrkkrp
46132a8048 Update the ‘CHANGELOG.md’ file (line folds) 2016-05-11 00:25:24 +07:00
mrkkrp
e39fd663ca Minor corrections and add test for ‘lineFold’ 2016-05-10 22:51:40 +07:00
mrkkrp
a74bcd1499 Add ‘checkCase’ (rename old one to ‘checkCase'’) 2016-05-10 22:51:23 +07:00
mrkkrp
2a07087766 Initial implementation of line folding
Close #87.
2016-05-10 22:50:22 +07:00
mrkkrp
34f1f95294 Fix a typo ‘ManyIndent’ → ‘IndentMany’ 2016-05-04 16:42:10 +07:00
mrkkrp
3af8d25407 Improve handling of custom streams
This improves position reporting/advancing for ‘eof’, ‘token’, and
‘tokens’ combinators. Previously it was slightly incorrect for streams
consisting of custom token as new tests demonstrated.
2016-05-04 01:24:02 +07:00
mrkkrp
dc63a8f893 Add tests to cover new API for position advancing
Close #102.
2016-05-04 00:53:09 +07:00
mrkkrp
59c01cba67 Improve some existing tests to increase coverage 2016-05-02 21:51:06 +07:00
mrkkrp
ae9ed355aa Inline functions in ‘Text.Megaparsec.Char’
This gives a nice speed up — not too surprising given size of the
functions, although it would be nice if GHC could figure this out by
itself too…
2016-05-02 01:00:59 +07:00
mrkkrp
f4f66222ec Improve performance of ‘(<*>)’
This handwritten version has proved to be more efficient from benchmarks
and profiling.
2016-05-02 00:59:58 +07:00
mrkkrp
df3b3016d5 Make ‘pToken’ lazier (position updating)
Evaluation of ‘npos’ is not necessary when we are going to report an
error. Similarly, evaluation of current position is not necessary when
we just need to get incremented position. This seemingly minor change
has profound impact on performance because call to ‘token’ function is
at the base of significant part of parsing process.
2016-05-02 00:53:42 +07:00
mrkkrp
2385cf5867 Add a test for ‘parseMaybe’ 2016-04-30 19:02:26 +07:00
mrkkrp
49303f18c4 Add a trivial test for ‘MonadIO’ instance 2016-04-30 18:32:50 +07:00
mrkkrp
2eddd78f0f Tests for ‘updatePos’ (different types of streams) 2016-04-30 18:22:00 +07:00
mrkkrp
3195a97776 Add new tests for ‘showTokens’ and pretty-printing 2016-04-30 17:31:52 +07:00
mrkkrp
9040284333 Use ‘lts-5.14’ and ‘QuickCheck-2.8.2’ 2016-04-29 15:04:26 +07:00
mrkkrp
f651d59ea6 Require at least ‘QuickCheck-2.8.2’ for test suite
Because of ‘Arbitrary’ instances for things from ‘contianers’
package (namely ‘Set’).
2016-04-29 14:58:27 +07:00
Mark Karpov
2cad25dd11 Merge pull request #99 from mrkkrp/pos-and-error-reform
Position and error reform
2016-04-28 00:10:03 +07:00
mrkkrp
9240896e6b Update the ‘CHANGELOG.md’ file 2016-04-28 00:07:15 +07:00
mrkkrp
1094408b96 Add ‘pushPosition’ and ‘popPosition’
Close #83.
2016-04-27 00:04:56 +07:00
mrkkrp
8e095bab8c A correction to ‘getPosition’ and ‘setPosition’
Make ‘getPosition’ and ‘setPosition’ work with current file, not with
the whole stack.
2016-04-26 23:01:09 +07:00
mrkkrp
f22cd69ff7 Cosmetic polishing 2016-04-26 00:37:06 +07:00
mrkkrp
13578590da Adjustments for compatibility 2016-04-25 19:51:13 +07:00
mrkkrp
f576945a4a Update tests for ‘Text.Megaparsec.Lexer’ 2016-04-24 21:56:45 +07:00
mrkkrp
e11066f07a Update tests for ‘Text.Megaparsec.Expr’ 2016-04-24 21:56:45 +07:00
mrkkrp
98b08b752a Update tests for ‘Text.Megaparsec.Prim’ 2016-04-24 21:56:45 +07:00
mrkkrp
643842ac1e Update tests for ‘Text.Megaparsec.Perm’ 2016-04-24 21:56:45 +07:00
mrkkrp
9089ed3325 Update tests for ‘Text.Megaparsec.Combinator’ 2016-04-24 21:56:45 +07:00
mrkkrp
6f69306515 Update tests for ‘Text.Megaparsec.Char’ 2016-04-24 21:56:45 +07:00
mrkkrp
35dc3a4469 Write tests for the new ‘Text.Megaparsec.Error’ 2016-04-24 21:56:40 +07:00
mrkkrp
14b1aeea8a Write tests for the new ‘Text.Megaparsec.Pos’ 2016-04-24 20:21:36 +07:00
mrkkrp
a1df59221b Update ‘Util’ module in test suite 2016-04-24 20:21:07 +07:00
mrkkrp
be3c1fe987 Derive ‘Read’ instance for ‘Dec’ 2016-04-24 20:19:48 +07:00
mrkkrp
495aa1bb87 Add ‘incorrectIndent’, improve indentation errors
Close #90.
2016-04-24 15:09:52 +07:00
mrkkrp
1ba128521f Make ‘tokens’ use “canonicalized” token streams
And introduce the notion in docs of ‘MessageItem’.
2016-04-23 22:31:09 +07:00
mrkkrp
91955013ef Adjust ‘old-tests’ test suite to new code base 2016-04-22 19:53:36 +07:00
mrkkrp
0879af8103 Add more dependencies to ‘tests’ component 2016-04-22 19:52:55 +07:00
mrkkrp
dd0cf0fe4a Add one more argument to ‘token’
The new argument allows to specify what to report as expected token when
input stream happens to be empty.
2016-04-22 19:51:14 +07:00
mrkkrp
c0c9b836dd Fix a bug (hints assymetry with ‘<|>’) 2016-04-22 19:48:55 +07:00
mrkkrp
17a6bb2baa Remove ‘MonadThrow’ instance, add ‘Dec’
‘Dec’ stands for “default error component”. We need this because
‘String’ looses information and thus we cannot write good enough tests
with it.
2016-04-22 19:48:34 +07:00
mrkkrp
eedf69761e Remove redundant constraints from lexer module 2016-04-18 21:52:45 +07:00
mrkkrp
84038a4fab Export ‘parseErrorPretty’ from ‘Text.Megaparsec’ 2016-04-18 20:48:31 +07:00
mrkkrp
f3f0aef44e Improve docs of ‘Text.Megaparsec.Prim’ 2016-04-18 19:49:52 +07:00
mrkkrp
006900e257 Add missing ‘@since’ labels to new functions 2016-04-18 19:49:20 +07:00
mrkkrp
fee19134e8 Improve new version of ‘Text.Megaparsec.Error’
Compatibility and documentation improvements.
2016-04-18 19:05:34 +07:00
mrkkrp
641114a442 Improve new version of ‘Text.Megaparsec.Pos’
Documentation improvements. The commit also makes it compile with all
supported GHC versions.
2016-04-18 17:59:32 +07:00