Struct rustc_errors::styled_buffer::StyledBuffer
source · pub struct StyledBuffer {
lines: Vec<Vec<StyledChar>>,
}
Fields§
§lines: Vec<Vec<StyledChar>>
Implementations§
source§impl StyledBuffer
impl StyledBuffer
pub fn new() -> StyledBuffer
sourcepub fn render(&self) -> Vec<Vec<StyledString>>
pub fn render(&self) -> Vec<Vec<StyledString>>
Returns content of StyledBuffer
split by lines and line styles
fn ensure_lines(&mut self, line: usize)
sourcepub fn putc(&mut self, line: usize, col: usize, chr: char, style: Style)
pub fn putc(&mut self, line: usize, col: usize, chr: char, style: Style)
Sets chr
with style
for given line
, col
.
If line
does not exist in our buffer, adds empty lines up to the given
and fills the last line with unstyled whitespace.
sourcepub fn puts(&mut self, line: usize, col: usize, string: &str, style: Style)
pub fn puts(&mut self, line: usize, col: usize, string: &str, style: Style)
Sets string
with style
for given line
, starting from col
.
If line
does not exist in our buffer, adds empty lines up to the given
and fills the last line with unstyled whitespace.
sourcepub fn prepend(&mut self, line: usize, string: &str, style: Style)
pub fn prepend(&mut self, line: usize, string: &str, style: Style)
For given line
inserts string
with style
before old content of that line,
adding lines if needed
sourcepub fn append(&mut self, line: usize, string: &str, style: Style)
pub fn append(&mut self, line: usize, string: &str, style: Style)
For given line
inserts string
with style
after old content of that line,
adding lines if needed
pub fn num_lines(&self) -> usize
Trait Implementations§
Auto Trait Implementations§
impl DynSend for StyledBuffer
impl DynSync for StyledBuffer
impl Freeze for StyledBuffer
impl RefUnwindSafe for StyledBuffer
impl Send for StyledBuffer
impl Sync for StyledBuffer
impl Unpin for StyledBuffer
impl UnwindSafe for StyledBuffer
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
source§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
source§impl<T> Filterable for T
impl<T> Filterable for T
source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§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>
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>
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> Pointable for T
impl<T> Pointable for T
source§impl<I, T, U> Upcast<I, U> for Twhere
U: UpcastFrom<I, T>,
impl<I, T, U> Upcast<I, U> for Twhere
U: UpcastFrom<I, T>,
source§impl<I, T> UpcastFrom<I, T> for T
impl<I, T> UpcastFrom<I, T> for T
fn upcast_from(from: T, _tcx: I) -> T
source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeSendSync for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes