#![warn(missing_docs)]
use std::{error::Error, sync::Arc};
use thiserror::Error;
pub mod batch;
pub mod raw_batch;
pub mod row;
pub mod value;
pub mod writers;
pub use writers::{CellValueBuilder, CellWriter, RowWriter};
#[derive(Debug, Clone, Error)]
#[error("SerializationError: {0}")]
pub struct SerializationError(Arc<dyn Error + Send + Sync>);
impl SerializationError {
#[inline]
pub fn new(err: impl Error + Send + Sync + 'static) -> SerializationError {
SerializationError(Arc::new(err))
}
pub fn downcast_ref<T: Error + 'static>(&self) -> Option<&T> {
self.0.downcast_ref()
}
}