pub struct Language(/* private fields */);Expand description
A language identifier used to select a grammar for syntax highlighting.
This is a thin wrapper around a string tag that matches the name registered
with arborium::Highlighter (e.g. "sql", "markdown", "python").
Which tags actually highlight at runtime depends on which lang-* features
the consumer has enabled on their own arborium dependency. kode-leptos
does not enable any language by default — consumers opt in to the grammars
they need and pay only for those in the final WASM.
Unknown or unregistered tags fall back to plain-text HTML escaping.
An empty name (Language::PLAIN) always renders as plain text.
§Construction
use kode_leptos::Language;
// Zero-cost from a string literal
let sql = Language::new_static("sql");
// From an owned String (e.g. a markdown fence info string)
let dynamic = Language::new(format!("{}", "markdown"));
// Plain text
let plain = Language::PLAIN;Implementations§
Source§impl Language
impl Language
Sourcepub const fn new_static(name: &'static str) -> Self
pub const fn new_static(name: &'static str) -> Self
Construct a language from a 'static string tag.
Prefer this for string literals — it is const, zero-cost, and never
allocates.
Trait Implementations§
impl Eq for Language
impl StructuralPartialEq for Language
Auto Trait Implementations§
impl Freeze for Language
impl RefUnwindSafe for Language
impl Send for Language
impl Sync for Language
impl Unpin for Language
impl UnsafeUnpin for Language
impl UnwindSafe for Language
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> SerializableKey for T
impl<T> SerializableKey for T
Source§impl<T> StorageAccess<T> for T
impl<T> StorageAccess<T> for T
Source§fn as_borrowed(&self) -> &T
fn as_borrowed(&self) -> &T
Borrows the value.
Source§fn into_taken(self) -> T
fn into_taken(self) -> T
Takes the value.