mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-02-04 05:36:12 +00:00
76eeb10c47430931f1f8b56e79d0bfdc217d3cc1
SabreTools.Serialization
This library comprises of serializers that both read and write from files and streams to the dedicated models as well as convert to and from the common internal models. This library is partially used by the current parsing and writing code but none of the internal model serialization is used.
Find the link to the Nuget package here.
Interfaces
Below is a table representing the various conversion interfaces that are implemented within this library.
| Interface Name | Source Type | Destination Type |
|---|---|---|
IByteDeserializer |
byte[]? |
Model |
IByteSerializer |
Model | byte[]? |
IFileDeserializer |
string? path |
Model |
IFileSerializer |
Model | string? path |
IModelSerializer |
Model | Model |
IStreamDeserializer |
Stream? |
Model |
IStreamSerializer |
Model | Stream? |
IStringDeserializer |
string? representation |
Model |
IStringSerializer |
Model | string? representation |
Below is a table representing the various non-conversion interfaces that are implemented within this library.
| Interface Name | Purpose |
|---|---|
IPrinter |
Provides a formatted output for a model |
IWrapper / IWrapper<T> |
Wraps a model or set of models to provide additional functionality |
Namespaces
Below is a table of all namespaces within the library and what they represent
| Namespace | Description |
|---|---|
SabreTools.Serialization.CrossModel |
Convert between models; mainly used for metadata files converting to and from a common, Dictionary-based model |
SabreTools.Serialization.Deserializers |
Convert from external sources to models |
SabreTools.Serialization.Printers |
Export model information in a formatted manner |
SabreTools.Serialization.Serializers |
Convert from models to external sources |
SabreTools.Serialization.Wrappers |
Classes that wrap serialization and models to allow for including extension properties |
Description
Releases
20
Languages
C#
99.7%
Shell
0.2%
PowerShell
0.1%