ssh_encoding/base64/
writer.rs1use crate::{Result, Writer};
4
5type Inner<'o> = base64ct::Encoder<'o, base64ct::Base64>;
7
8pub struct Base64Writer<'o> {
10 inner: Inner<'o>,
11}
12
13impl<'o> Base64Writer<'o> {
14 pub fn new(output: &'o mut [u8]) -> Result<Self> {
18 Ok(Self {
19 inner: Inner::new(output)?,
20 })
21 }
22
23 pub fn finish(self) -> Result<&'o str> {
25 Ok(self.inner.finish()?)
26 }
27}
28
29impl Writer for Base64Writer<'_> {
30 fn write(&mut self, bytes: &[u8]) -> Result<()> {
31 Ok(self.inner.encode(bytes)?)
32 }
33}