pub struct HtmlRenderer;
Expand description

A Renderer implementor for HTML output. Use this type with the render function.

The resulting HTML is not wrapped in any parent tag and defines no font by itself. Each styled text region uses a span tag and defines its styling inline using the style attribute.

Example

use syntastica::{renderer::HtmlRenderer, theme};

// define a theme
let theme = theme! { "keyword": "#ff0000" }.resolve_links().unwrap();

// define highlights
let highlights = vec![vec![("<fn>", Some("keyword")), ("none", None)]];

// render to HTML
let output = syntastica::render(&highlights, &mut HtmlRenderer, theme);

assert_eq!(
    output,
    r#"<span style="color:rgb(255,0,0);">&lt;fn&gt;</span>none"#
);

Implementations§

source§

impl HtmlRenderer

source

pub fn new() -> Self

Create a new HtmlRenderer. Because HtmlRenderer is a unit struct, this is the same as just writing HtmlRenderer, but this function is provided for clarification nonetheless.

Trait Implementations§

source§

impl Default for HtmlRenderer

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Renderer for HtmlRenderer

source§

fn newline(&mut self) -> Cow<'static, str>

Is called at the end of every input line. The returned string will be used for line breaks in the output. Read more
source§

fn escape(&mut self, text: &str) -> Cow<'static, str>

Is called for every region of the input, both styled and unstyled. Read more
source§

fn styled(&mut self, text: &str, style: Style) -> Cow<'static, str>

Is called for every styled region of the input. Read more
source§

fn head(&mut self) -> Cow<'static, str>

Is called at the start of rendering, before anything else. The returned string will be the start of the final output. Read more
source§

fn tail(&mut self) -> Cow<'static, str>

Is called at the end of rendering, after the final call to Renderer::newline. The returned string will be the end of the final output. Read more
source§

fn unstyled<'a>(&mut self, text: &'a str) -> Cow<'a, str>

Is called for every unstyled region of the input. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

source§

fn adapt_into_using<M>(self, method: M) -> Dwhere M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T, C> ArraysFrom<C> for Twhere C: IntoArrays<T>,

source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
source§

impl<T, C> ArraysInto<C> for Twhere C: FromArrays<T>,

source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T, C> ComponentsFrom<C> for Twhere C: IntoComponents<T>,

source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromAngle<T> for T

source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
source§

impl<T, U> FromStimulus<U> for Twhere U: IntoStimulus<T>,

source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> IntoAngle<U> for Twhere U: FromAngle<T>,

source§

fn into_angle(self) -> U

Performs a conversion into T.
source§

impl<T, U> IntoColor<U> for Twhere U: FromColor<T>,

source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
source§

impl<T, U> IntoColorUnclamped<U> for Twhere U: FromColorUnclamped<T>,

source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
source§

impl<T> IntoStimulus<T> for T

source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
source§

impl<'a, T, C> TryComponentsInto<C> for Twhere C: TryFromComponents<T>,

§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T, U> TryIntoColor<U> for Twhere U: TryFromColor<T>,

source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
source§

impl<C, U> UintsFrom<C> for Uwhere C: IntoUints<U>,

source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
source§

impl<C, U> UintsInto<C> for Uwhere C: FromUints<U>,

source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.