pub(crate) struct StringFormat<'a> {
pub(crate) opener: &'a str,
pub(crate) closer: &'a str,
pub(crate) line_start: &'a str,
pub(crate) line_end: &'a str,
pub(crate) shape: Shape,
pub(crate) trim_end: bool,
pub(crate) config: &'a Config,
}
Expand description
Describes the layout of a piece of text.
Fields§
§opener: &'a str
The opening sequence of characters for the piece of text
closer: &'a str
The closing sequence of characters for the piece of text
line_start: &'a str
The opening sequence of characters for a line
line_end: &'a str
The closing sequence of characters for a line
shape: Shape
The allocated box to fit the text into
trim_end: bool
Trim trailing whitespaces
config: &'a Config
Implementations§
source§impl<'a> StringFormat<'a>
impl<'a> StringFormat<'a>
pub(crate) fn new(shape: Shape, config: &'a Config) -> StringFormat<'a>
sourcefn max_width_with_indent(&self) -> Option<usize>
fn max_width_with_indent(&self) -> Option<usize>
Returns the maximum number of graphemes that is possible on a line while taking the indentation into account.
If we cannot put at least a single character per line, the rewrite won’t succeed.
sourcefn max_width_without_indent(&self) -> Option<usize>
fn max_width_without_indent(&self) -> Option<usize>
Like max_width_with_indent but the indentation is not subtracted. This allows to fit more graphemes from the string on a line when SnippetState::EndWithLineFeed.
Auto Trait Implementations§
impl<'a> Freeze for StringFormat<'a>
impl<'a> !RefUnwindSafe for StringFormat<'a>
impl<'a> !Send for StringFormat<'a>
impl<'a> !Sync for StringFormat<'a>
impl<'a> Unpin for StringFormat<'a>
impl<'a> !UnwindSafe for StringFormat<'a>
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> 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 more§impl<T> Pointable for T
impl<T> Pointable for 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>
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: 112 bytes