kosame_sql 0.3.0

Macro-based Rust ORM focused on developer ergonomics
Documentation
use std::{fmt::Write, marker::PhantomData};

use crate::Dialect;

pub struct Formatter<'a, D> {
    buf: &'a mut (dyn Write + 'a),
    _dialect: PhantomData<D>,
}

impl<'a, D> Formatter<'a, D>
where
    D: Dialect,
{
    pub fn new(buf: &'a mut (dyn Write + 'a)) -> Self {
        Self {
            buf,
            _dialect: PhantomData,
        }
    }
}

impl<D> Write for Formatter<'_, D> {
    fn write_str(&mut self, s: &str) -> std::fmt::Result {
        self.buf.write_str(s)
    }
}