reed_solomon_novelpoly/novel_poly_basis/
encode.rs

1use super::*;
2
3/// Encode the given payload into `n_min` shards.
4///
5/// The implementation can create more erasure chunks and drop some as needed due to the inherent impl. requirements on `n` and `k`.
6pub fn encode<S: Shard>(bytes: &[u8], n_min: usize) -> Result<Vec<S>> {
7	let params = CodeParams::derive_parameters(n_min, recoverablity_subset_size(n_min))?;
8
9	let rs = params.make_encoder();
10	rs.encode::<S>(bytes)
11}