[−][src]Crate solana_reed_solomon_erasure
This crate provides an encoder/decoder for Reed-Solomon erasure code.
Please note that erasure coding means errors are not directly detected or corrected, but missing data pieces(shards) can be reconstructed given that the configuration provides high enough redundancy.
You will have to implement error detection separately(e.g. via checksums) and simply leave out the corrupted shards when attempting to reconstruct the missing data.
Macros
convert_2D_slices | Makes it easier to work with 2D slices, arrays, etc. |
shard | Constructs a shard. |
shards | Constructs vector of shards. |
Structs
ReedSolomon | Reed-Solomon erasure code encoder/decoder. |
ShardByShard | Bookkeeper for shard by shard encoding. |
Enums
Error | |
ParallelParam | Parameters for parallelism. |
SBSError |
Functions
make_blank_shard | Makes shard with byte array filled with zeros of some length. |
make_blank_shards | |
make_zero_len_shard | Makes shard with byte array of zero length. |
make_zero_len_shards | |
option_shards_into_shards | Transforms vector of option shards into vector of shards. |
option_shards_to_shards | Transforms slice of option shards to vector of shards. |
shards_into_option_shards | Transforms vector of shards into vector of option shards. |
shards_to_option_shards | Transforms slice of shards to vector of option shards. |
Type Definitions
Shard | Convenience data type provided by this library. |