27 lines
554 B
Rust
27 lines
554 B
Rust
use crate::Response;
|
|
use std::{error::Error as StdError, io};
|
|
use url::Url;
|
|
|
|
/// A Gemini request and its associated metadata.
|
|
pub struct Request {
|
|
url: Url,
|
|
}
|
|
|
|
pub type Error = Box<dyn StdError + Sync + Send>;
|
|
|
|
#[allow(dead_code, unused_assignments, unused_mut, unused_variables)]
|
|
mod routes;
|
|
pub use routes::*;
|
|
|
|
pub trait Handler {
|
|
fn handle(r: Request) -> Result<Response, Error>;
|
|
}
|
|
|
|
pub fn serve(_h: impl Handler, _port: u16) -> io::Result<()> {
|
|
Ok(())
|
|
}
|
|
|
|
pub fn serve_plain(_h: impl Handler, _port: u16) -> io::Result<()> {
|
|
Ok(())
|
|
}
|