Remove AsRef<str>
restriction from structs (#377)
This commit is contained in:
parent
ca7b93c790
commit
1ab01cca27
3 changed files with 8 additions and 5 deletions
|
@ -2,6 +2,9 @@
|
|||
|
||||
## [Unreleased]
|
||||
|
||||
- Remove `AsRef<str>` restriction from `PreEscaped`
|
||||
[#377](https://github.com/lambda-fairy/maud/pull/377)
|
||||
|
||||
## [0.25.0] - 2023-04-16
|
||||
|
||||
- Remove `html_debug!`
|
||||
|
|
|
@ -64,7 +64,7 @@ use maud::{Markup, PreEscaped, Render};
|
|||
use pulldown_cmark::{Parser, html};
|
||||
|
||||
/// Renders a block of Markdown using `pulldown-cmark`.
|
||||
struct Markdown<T: AsRef<str>>(T);
|
||||
struct Markdown<T>(T);
|
||||
|
||||
impl<T: AsRef<str>> Render for Markdown<T> {
|
||||
fn render(&self) -> Markup {
|
||||
|
|
|
@ -215,7 +215,7 @@ pub fn display(value: impl Display) -> impl Render {
|
|||
|
||||
/// A wrapper that renders the inner value without escaping.
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
pub struct PreEscaped<T: AsRef<str>>(pub T);
|
||||
pub struct PreEscaped<T>(pub T);
|
||||
|
||||
impl<T: AsRef<str>> Render for PreEscaped<T> {
|
||||
fn render_to(&self, w: &mut String) {
|
||||
|
@ -228,20 +228,20 @@ impl<T: AsRef<str>> Render for PreEscaped<T> {
|
|||
/// The `html!` macro expands to an expression of this type.
|
||||
pub type Markup = PreEscaped<String>;
|
||||
|
||||
impl<T: AsRef<str> + Into<String>> PreEscaped<T> {
|
||||
impl<T: Into<String>> PreEscaped<T> {
|
||||
/// Converts the inner value to a string.
|
||||
pub fn into_string(self) -> String {
|
||||
self.0.into()
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: AsRef<str> + Into<String>> From<PreEscaped<T>> for String {
|
||||
impl<T: Into<String>> From<PreEscaped<T>> for String {
|
||||
fn from(value: PreEscaped<T>) -> String {
|
||||
value.into_string()
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: AsRef<str> + Default> Default for PreEscaped<T> {
|
||||
impl<T: Default> Default for PreEscaped<T> {
|
||||
fn default() -> Self {
|
||||
Self(Default::default())
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue