btt 0.5.0

Binary to text encodings
Documentation
pub trait Padding: Copy {
	fn padding(self) -> Option<u8>;

	#[inline]
	fn eq(self, other: u8) -> bool {
		self.padding() == Some(other)
	}
}

#[derive(Clone, Copy, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct Unpadded;

impl Padding for Unpadded {
	#[inline]
	fn padding(self) -> Option<u8> {
		None
	}
}

impl Padding for u8 {
	#[inline]
	fn padding(self) -> Option<u8> {
		Some(self)
	}
}

impl Padding for Option<u8> {
	#[inline]
	fn padding(self) -> Option<u8> {
		self
	}
}

#[derive(Clone, Copy, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct Equals;

impl Padding for Equals {
	#[inline]
	fn padding(self) -> Option<u8> {
		Some(b'=')
	}
}