sqlc-gen-sqlx 0.0.0

A sqlc plugin that generates type-safe sqlx Rust code from SQL queries.
Documentation
---
source: tests/codegen.rs
expression: code
---
// Code generated by sqlc-gen-sqlx v[VERSION]. DO NOT EDIT.
// sqlc version: [VERSION]

#![allow(dead_code, reason = "generated queries may expose items a caller does not use")]

const LIST_AUTHORS: &str = "SELECT id, name, bio FROM authors";
#[derive(Debug, Clone, sqlx::FromRow)]
pub struct ListAuthorsRow {
    pub id: i64,
    pub name: String,
    pub bio: Option<String>,
}
pub struct Queries<E> {
    db: E,
}
impl<E> Queries<E> {
    pub fn new(db: E) -> Self {
        Self { db }
    }
}
impl<E> Queries<E>
where
    for<'c> &'c mut E: sqlx::Executor<'c, Database = sqlx::Postgres>,
{
    pub async fn list_authors(&mut self) -> Result<Vec<ListAuthorsRow>, sqlx::Error> {
        sqlx::query_as::<_, ListAuthorsRow>(LIST_AUTHORS).fetch_all(&mut self.db).await
    }
}