Commit Graph

55 Commits

Author SHA1 Message Date
Harendra Kumar
26e8629ddc Disable failing takeBetween test 2023-11-28 01:46:13 +05:30
Harendra Kumar
32390c592e Add a finalizer action in Fold type
This was needed especially for concurrent fold combinators. A fold
combinator that uses concurrent folds needs to wait for the concurrent
folds to finish before it can finish. The finalizing action in folds can
deallocate any resources allocated by the "initial" action and also wait
for folds that it has initialized.

This complicates fold combinators in general. We can potentially
introduce a type for non-failing parsers and support finalization only
in those. The current use cases can be covered by that. Parsers do not
support scanning, which is not required in the use cases where we need
finalization (there is no known use case).
2023-11-18 23:51:09 +05:30
Harendra Kumar
a11fe00965 Fix warnings for GHC 9.6 and 9.8 2023-11-03 01:44:25 +05:30
Ranjeet Ranjan
2e8c9ac1fd
Rename unsafeIndex in Array module to getIndexUnsafe (#2540) 2023-08-18 15:44:47 +05:30
Ranjeet Ranjan
e6051b17cc
Re-export entire submodules from Producer (#2514) 2023-08-11 15:14:25 +05:30
Ranjeet Ranjan
9bf458f682
Merge Data.Parser.ParserD test cases to Data.Parser (#2458)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
2023-08-02 15:54:24 +05:30
Harendra Kumar
5e0307ae79 Import Parser instead of ParserD 2023-07-22 21:52:02 +05:30
Harendra Kumar
d134ea3a56 Disable deintercalate tests 2023-03-02 16:22:32 +05:30
Harendra Kumar
635489ba7b Fix escape processing in wordWithQuotes
To escape characters in the same way as shell and to be able to specify
escape transliteration, and transliterate based on the type of quote.
2023-03-02 16:22:32 +05:30
Harendra Kumar
36bbd3bc1c Remove the rewrite rule based Parser wrapper layer
Now we have explicit "Parser" and "ParserK" types for direct style and
CPS parsers, respectively. The programmer can use either type depending
on the use case.
2023-02-10 11:48:18 +05:30
Ranjeet Ranjan
001b874234
Rename rights, lefts, both to catRights, catLefts, catEithers (#2139)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
2022-12-01 16:28:37 +05:30
Ranjeet Kumar Ranjan
3a21b44607 Make parser result type either everywhere
* Change remaining parse/parseBreak/parseIterate functions
* Fix benchmarks
* Fix tests
2022-11-25 19:09:34 +05:30
Adithya Kumar
0d3c63aeae Rename serialWith to splitWith 2022-11-07 19:11:27 +05:30
Ranjeet Kumar Ranjan
4eda9d0c1f Rename Data.Array.Unboxed 2022-11-04 16:00:48 +05:30
Adithya Kumar
239e3311eb Change "Parser m a b" to "Parser a m b" 2022-11-03 04:28:59 +05:30
Ranjeet Ranjan
61eb3f4dfa
Change the signature of Parser.deintercalate, move fold at end (#1904) 2022-10-07 13:51:50 +05:30
Harendra Kumar
c0769668d9 Change the type of parser "extract" to Step 2022-08-20 23:05:13 +05:30
Ranjeet Ranjan
ec760805c9
Modularize test cases (#1707)
* Modularize test cases

* Make it build with test-core flag

And several other changes.

Co-authored-by: Harendra Kumar <harendra@composewell.com>
2022-08-20 00:45:57 +05:30
Ranjeet Kumar Ranjan
26b78c6e89 Deprecate Streamly.Data.Array.Foreign module
Rename it to Streamly.Data.Array.Unboxed
2022-08-06 00:38:23 +05:30
Adithya Kumar
3d8ffee684 Fix the test case for Parser.takeFramedByEsc_ 2022-07-27 17:43:18 +05:30
Adithya Kumar
f3b07c2922 Add an option to preserve quotes in wordQuotedBy 2022-06-09 21:55:06 +05:30
Ranjeet Kumar Ranjan
509fc06729 Fix takeFramedByEsc_ test case 2022-05-28 23:58:02 +05:30
Harendra Kumar
420f387a20 Deprecate the "next" parser, use "one" fold instead 2022-05-19 23:26:49 +05:30
Ranjeet Kumar Ranjan
93e33d3292 Add parser tests cases
* takeEndBy
* takeEndByEsc
* takeFramedByEsc
* takeStartBy_
2022-05-12 16:59:07 +05:30
Harendra Kumar
9e034c738e Add takeWhileP test 2022-05-09 13:02:49 +05:30
Harendra Kumar
6ed0c935c5 Rename some parser APIs, reorg the export list
And add some proposed commented APIs.
2022-05-08 10:51:52 +05:30
Harendra Kumar
0409d4bbec Add a test for deintercalate 2022-05-06 16:51:30 +05:30
Adithya Kumar
064b1d9db7 Rename unsafeCast as castUnsafe 2022-03-07 03:54:51 +05:30
Adithya Kumar
7cd7a185d3 Change the working array position in the APIs of Foreign(.Type) 2022-02-06 03:52:44 +05:30
Julian Ospald
d70b57c039 Add 'next' to Parsers 2021-11-06 21:54:26 +05:30
Harendra Kumar
02e884f264 Fix the takeBetween test
Fixes #1099
2021-10-09 22:53:18 +05:30
Adithya Kumar
3017898716 Add tests for Parser.choice 2021-08-09 16:36:48 +05:30
Adithya Kumar
00240ed531 Add tests for takeP 2021-08-04 20:58:44 +05:30
Pranay Sashank
7d9256e283 Rename Parser.yield, yieldM to fromPure, fromEffect. 2021-05-30 22:24:54 +05:30
Adithya Kumar
ac5c311242 Prefix tests with module names
Solves https://github.com/composewell/streamly/issues/858
2021-03-31 19:32:42 +05:30
Adithya Kumar
f261f02d15 Make the behaviour of splitMany similar to that of parseMany 2021-03-13 03:33:17 +05:30
Ranjeet Kumar Ranjan
4da398aa00 Change argument order in parser combinators #969
Keep the collecting fold as the last argument for ease of composition.
Data flows from one fold to the next, so the next fold in the chain
should be the last argument.
2021-03-09 23:10:43 +05:30
Harendra Kumar
d2e3430348 Rename some fold combinators
This commit has no functional change, only renaming and doc edits.
2021-03-07 23:04:41 +05:30
Ranjeet Kumar Ranjan
df38c4a8a4 Change splitWith to serialWith in folds and parsers 2021-03-05 11:46:59 +05:30
Ranjeet Kumar Ranjan
0414fe8ec6 Rename takeLE to take 2021-03-05 11:43:48 +05:30
Anurag Hooda
e4e1d25647 make sliceBeginWith fail when first element fails predicate 2021-02-07 20:05:01 +05:30
Anurag Hooda
fb9f05e4fb Add sliceBeginWith, tests and benchmarks 2021-02-07 20:05:01 +05:30
Pranay Sashank
5c018c7e45 Rename Data.Array.Storable.Foreign to Data.Array.Foreign.
Closes #854.
2021-02-01 21:31:06 +05:30
Adithya Kumar
084cdea601 Rename Fold.ltake to Fold.takeLE 2021-01-16 07:12:16 +05:30
adithyaov
bdedb6949b Make the initial value of Fold a Step type
Review changes in this commit were done by Harendra Kumar (@harendra-kumar)
2021-01-15 05:02:23 +05:30
Anurag Hooda
86745a756d Rename slicesepby to slicesepbyP, some formatting changes 2021-01-14 19:17:31 +05:30
Anurag Hooda
5ccf51dcae Implement slicesepby, add tests and benchmarks 2021-01-14 19:17:31 +05:30
Anurag Hooda
05613cd6cf Fix formatting for parsers 2021-01-04 18:30:38 +05:30
Anurag Hooda
656bfc6bc8 Add tests and benchmarks for takeBetween 2021-01-04 18:30:29 +05:30
Adithya Kumar
4d3f9b41ed Implement Data.Parser.ParserD.wordBy
- Modify Data.Parser.wordBy accordingly
- Add tests for both
- Add benchmarks for both
2020-12-23 00:15:32 +05:30