Commit Graph

449 Commits

Author SHA1 Message Date
Harendra Kumar
8e8159f156 Rename write* to create* in Array module
Export create/createOf from Array module
Rearrange exports in Array module
2024-01-18 11:29:01 +05:30
Adithya Kumar
af57e26270 Rename asUnpinnedPtrUnsafe and deprecate asPtrUnsafe
asUnpinnedPtrUnsafe -> unsafeAsPtr
asPtrUnsafe -> unsafePinnedAsPtr
2024-01-18 00:53:37 +05:30
Harendra Kumar
191abebe92 Fix serialize test taking too long, too much mem 2024-01-04 07:41:04 +05:30
Harendra Kumar
ce86302f08 Fix hlint issues in tests 2023-12-21 17:17:52 +05:30
Adithya Kumar
6eee16aebc Add a case to test equality of serialization encoding 2023-12-02 16:55:57 +05:30
Harendra Kumar
d55d68ab07 Fix build with "dev" flag on 2023-11-28 07:07:28 +05:30
Harendra Kumar
c0d3178fa4 Make SerializeConfig opaque 2023-11-28 03:36:49 +05:30
Harendra Kumar
26e8629ddc Disable failing takeBetween test 2023-11-28 01:46:13 +05:30
Harendra Kumar
fd93674cec Remove the intermediate Concurrent/Time/Exception modules 2023-11-27 15:50:24 +05:30
Harendra Kumar
d4db31c512 Move Serialize.Parser/Stream to Binary.Parser/Stream 2023-11-26 02:52:19 +05:30
Harendra Kumar
13581bfec1 Rename serialize/deserialize/size of Serialize class 2023-11-26 01:57:10 +05:30
Harendra Kumar
1efeed403b Rename peekByteIndex/pokeByteIndex to peekAt/pokeAt 2023-11-26 01:57:10 +05:30
Harendra Kumar
7cb856b7e6 Move the Array serialization APIs to the Array module 2023-11-26 01:57:10 +05:30
Harendra Kumar
56fd008519 Rename newByteArray to new
To keep it consistent with naming in other Array modules.
2023-11-26 01:57:10 +05:30
Harendra Kumar
6705ec00b9 Rename Data.Serialize to Data.MutByteArray 2023-11-26 01:57:10 +05:30
Harendra Kumar
627c72ae65 Rename newBytes and pinnedNewBytes 2023-11-24 13:38:10 +05:30
Harendra Kumar
47b10b3914 Rename MutableByteArray to MutByteArray 2023-11-24 13:38:10 +05:30
Harendra Kumar
dfa2079542 Move Stream.Chunked to Array.Stream 2023-11-24 12:37:42 +05:30
Harendra Kumar
33bffd614b Change deriveUnbox to use instance splice 2023-11-22 21:39:39 +05:30
Harendra Kumar
1640a686e7 Rename Config/defaultConfig to S/serializeConfig 2023-11-22 21:39:39 +05:30
Harendra Kumar
7d50e5e03e Implement deriveSerialize using deriveSerializeWith 2023-11-22 21:39:39 +05:30
Harendra Kumar
e7f6e7e9eb Add Config setter functions for Serialize derivation 2023-11-22 21:39:39 +05:30
Harendra Kumar
97e0d20ffb Re-export internal serialize modules and hide them 2023-11-21 02:37:28 +05:30
Harendra Kumar
621cb65f50 Move ToBytes and FromBytes under Data.Serialize 2023-11-20 17:43:55 +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
Adithya Kumar
8e04e4b988 Add Serialize instance for tuple 2023-10-01 12:55:11 +05:30
Adithya Kumar
bd8c8cb1b8 Add tests for TH derivation with recordSyntaxWithHeader is enabled
- Add roundtrip tests for nested records
- Add compatibility tests
2023-09-27 08:18:14 +05:30
Adithya Kumar
60a71dcbb5 Use more expressive notation for deriveSerializeWith 2023-09-14 22:20:59 +05:30
Adithya Kumar
4f00d1f54a Split the Serialize.roundtrip test into reusable parts 2023-09-14 17:41:21 +05:30
Adithya Kumar
5f67528761 Add a more robust offset ignoring tests in Serialize
This is meant to catch any serialized absolute offsets
2023-09-14 17:41:21 +05:30
Adithya Kumar
5ba608affc Update the Scientific tests in Unicode.Parser 2023-09-12 01:00:29 +05:30
Adithya Kumar
9c67608ffa Add Serialize instance for Integer 2023-09-12 01:00:29 +05:30
Adithya Kumar
3043a3f699 Add Serialize instance for (Array a) 2023-09-12 01:00:29 +05:30
Adithya Kumar
b675912c27 Test the encoding and decoding functions in the roundtrip 2023-09-12 01:00:29 +05:30
Adithya Kumar
21fd670143 Add tests for the constructorTagAsString option in Serialize.TH 2023-09-12 01:00:29 +05:30
Adithya Kumar
13f91aad8c Change the API and update doc of a few APIs in Serialize.TH 2023-09-06 15:09:08 +05:30
Adithya Kumar
9f7b45dcf4 Use a configuration to control functionality of deriveSerializeWith 2023-09-06 15:09:08 +05:30
Adithya Kumar
9479709551 Add Serialize test for datatype with functional parameters 2023-09-01 08:01:58 +05:30
Adithya Kumar
5381715f97 Change the functionality of deriveSerailizeWith 2023-09-01 08:01:58 +05:30
Adithya Kumar
50fc60cb50 Add serialize size checks for constant size datatypes 2023-08-30 14:07:33 +05:30
Adithya Kumar
1d0e20c9d3 Add a test checking the size in the roundtrip serialization tests 2023-08-30 14:07:33 +05:30
Adithya Kumar
5fef84310e Remove Serailize.Size and change the signature of Serialize.size 2023-08-30 14:07:33 +05:30
Harendra Kumar
7bc450d725 Pass the array size to deserialize for bound check 2023-08-21 16:28:02 +05:30
Harendra Kumar
f7f42e0242 Improve "size" op performance in Serialize
By using tail-recursive traversal of the structures.
2023-08-21 01:45:06 +05:30
Adithya Kumar
041be85bb8 Limit number of tests in large quick check properties 2023-08-18 23:07:50 +05:30
Adithya Kumar
4997b47fe1 Add a recursive ADT to the Serialize test-suite 2023-08-18 23:07:50 +05:30
Adithya Kumar
c4343a47f7 Abstact size and simplify the CPP statement in Unbox tests 2023-08-18 23:07:50 +05:30
Adithya Kumar
dbf9fe89f1 Add common Serialize deriving tests 2023-08-18 23:07:50 +05:30
Adithya Kumar
c4794aab93 Add tests for the Serialize template haskell deriving 2023-08-18 23:07:50 +05:30