ProbabilisticDataStructures
ProbabilisticDataStructures copied to clipboard
Feature/serialization
What is this PR?
Added ability to serialize/deserialize the data structures (currently only Count-Min-Sketch is supported). This pull request should lay the foundation for supporting other data structures in this repository. Link to the issue: #2
How it works?
I created a separate assembly for serialization/deserialization purposes, so this feature can be treated as an optional add-on. In assembly we can find 3 main folders: XML JSON Binary
In each folder there is a converter or serialization surrogate which handles the serialization and deserialization. Extension methods for serialization and deserialization were created, all follow the same naming convention: "ToXXX/FromXXX", for example: "ToBinary/FromBinary".
Things to know
All binary and XML serialization surrogates need to be marked with the attributes: BinarySerializationSurrogateAttribute and XMLSerializationSurrogateAttribute accordingly. This is required for finding the correct surrogate for the requested type prior to serialization and deserialization.