Struct SyntaxHighlighter
pub struct SyntaxHighlighter { /* private fields */ }Expand description
A grammar-backed Highlighter for one language.
As a Highlighter, a pass starts at carry 0 and each line’s carry is
only meaningful to the line after it within that pass: carries index the
parse states recorded since the last carry-0 call. Callers keeping their
own caches use SyntaxHighlighter::start and SyntaxState directly.
Implementations§
§impl SyntaxHighlighter
impl SyntaxHighlighter
pub fn for_token(token: &str) -> Option<SyntaxHighlighter>
pub fn for_token(token: &str) -> Option<SyntaxHighlighter>
Look a grammar up by file extension (rs, toml) or by
case-insensitive name (Rust, Dockerfile), the way a Markdown fence
tag names its language. None when no grammar matches.
pub fn plain_text() -> SyntaxHighlighter
pub fn plain_text() -> SyntaxHighlighter
Plain text: every line is a single TokenKind::Text run.
pub fn for_token_or_plain(token: &str) -> SyntaxHighlighter
pub fn for_token_or_plain(token: &str) -> SyntaxHighlighter
SyntaxHighlighter::for_token, falling back to plain text.
pub fn start(&self) -> SyntaxState
pub fn start(&self) -> SyntaxState
The parse state at the start of a document.
Trait Implementations§
§impl Highlighter for SyntaxHighlighter
impl Highlighter for SyntaxHighlighter
Auto Trait Implementations§
impl !Freeze for SyntaxHighlighter
impl !RefUnwindSafe for SyntaxHighlighter
impl Send for SyntaxHighlighter
impl !Sync for SyntaxHighlighter
impl Unpin for SyntaxHighlighter
impl UnsafeUnpin for SyntaxHighlighter
impl UnwindSafe for SyntaxHighlighter
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more