Skip to content

Commit

Permalink
impl Responder for actix-web framework
Browse files Browse the repository at this point in the history
It looks similar to the Rocket implementation, and functionally is also similar:
a syncronous response for PreEscaped<String>

Refs lambda-fairy#135
  • Loading branch information
anxiousmodernman committed Jun 12, 2018
1 parent 75763dd commit 5f608c7
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
1 change: 1 addition & 0 deletions maud/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ maud_htmlescape = { version = "0.17.0", path = "../maud_htmlescape" }
maud_macros = { version = "0.17.5", path = "../maud_macros" }
iron = { version = ">= 0.5.1, < 0.7.0", optional = true }
rocket = { version = "0.3", optional = true }
actix-web = { version = "0.6.12", optional = true }

[dev-dependencies]
maud_lints = { version = "0.17.0", path = "../maud_lints" }
Expand Down
15 changes: 15 additions & 0 deletions maud/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#![doc(html_root_url = "https://docs.rs/maud/0.17.5")]

#[cfg(feature = "actix-web")] extern crate actix_web;
#[cfg(feature = "iron")] extern crate iron;
#[cfg(feature = "rocket")] extern crate rocket;

Expand Down Expand Up @@ -189,3 +190,17 @@ mod rocket_support {
}
}
}

#[cfg(feature = "actix-web")]
mod actix_support {
use PreEscaped;
use actix_web::{Responder, HttpResponse, HttpRequest, Error};

impl Responder for PreEscaped<String> {
type Item = HttpResponse;
type Error = Error;
fn respond_to<String>(self, _req: &HttpRequest<String>) -> Result<Self::Item, Self::Error> {
Ok(HttpResponse::Ok().body(self.0))
}
}
}

0 comments on commit 5f608c7

Please sign in to comment.