Struct pretty::RcAllocator
source · pub struct RcAllocator;
Trait Implementations§
source§impl<'a, A> DocAllocator<'a, A> for RcAllocatorwhere
A: 'a,
impl<'a, A> DocAllocator<'a, A> for RcAllocatorwhere
A: 'a,
type Doc = RcDoc<'a, A>
fn alloc(&'a self, doc: Doc<'a, Self::Doc, A>) -> Self::Doc
fn alloc_column_fn( &'a self, f: impl Fn(usize) -> Self::Doc + 'a, ) -> <Self::Doc as DocPtr<'a, A>>::ColumnFn
fn alloc_width_fn( &'a self, f: impl Fn(isize) -> Self::Doc + 'a, ) -> <Self::Doc as DocPtr<'a, A>>::WidthFn
fn alloc_cow(&'a self, doc: BuildDoc<'a, Self::Doc, A>) -> Self::Doc
source§fn nil(&'a self) -> DocBuilder<'a, Self, A>
fn nil(&'a self) -> DocBuilder<'a, Self, A>
Allocate an empty document.
source§fn fail(&'a self) -> DocBuilder<'a, Self, A>
fn fail(&'a self) -> DocBuilder<'a, Self, A>
Fails document rendering immediately. Read more
source§fn hardline(&'a self) -> DocBuilder<'a, Self, A>
fn hardline(&'a self) -> DocBuilder<'a, Self, A>
Allocate a single hardline.
fn space(&'a self) -> DocBuilder<'a, Self, A>
source§fn line(&'a self) -> DocBuilder<'a, Self, A>
fn line(&'a self) -> DocBuilder<'a, Self, A>
A line acts like a
\n
but behaves like space
if it is grouped on a single line.source§fn line_(&'a self) -> DocBuilder<'a, Self, A>
fn line_(&'a self) -> DocBuilder<'a, Self, A>
source§fn softline(&'a self) -> DocBuilder<'a, Self, A>
fn softline(&'a self) -> DocBuilder<'a, Self, A>
A
softline
acts like space
if the document fits the page, otherwise like line
source§fn softline_(&'a self) -> DocBuilder<'a, Self, A>
fn softline_(&'a self) -> DocBuilder<'a, Self, A>
A
softline_
acts like nil
if the document fits the page, otherwise like line_
source§fn as_string<U: Display>(&'a self, data: U) -> DocBuilder<'a, Self, A>
fn as_string<U: Display>(&'a self, data: U) -> DocBuilder<'a, Self, A>
Allocate a document containing the text
t.to_string()
. Read moresource§fn text<U: Into<Cow<'a, str>>>(&'a self, data: U) -> DocBuilder<'a, Self, A>
fn text<U: Into<Cow<'a, str>>>(&'a self, data: U) -> DocBuilder<'a, Self, A>
Allocate a document containing the given text. Read more
source§fn concat<I>(&'a self, docs: I) -> DocBuilder<'a, Self, A>
fn concat<I>(&'a self, docs: I) -> DocBuilder<'a, Self, A>
Allocate a document concatenating the given documents.
source§fn intersperse<I, S>(&'a self, docs: I, separator: S) -> DocBuilder<'a, Self, A>
fn intersperse<I, S>(&'a self, docs: I, separator: S) -> DocBuilder<'a, Self, A>
Allocate a document that intersperses the given separator
S
between the given documents
[A, B, C, ..., Z]
, yielding [A, S, B, S, C, S, ..., S, Z]
. Read moresource§impl<'a, A> Pretty<'a, RcAllocator, A> for RcDoc<'a, A>where
A: 'a,
impl<'a, A> Pretty<'a, RcAllocator, A> for RcDoc<'a, A>where
A: 'a,
source§fn pretty(self, allocator: &'a RcAllocator) -> DocBuilder<'a, RcAllocator, A>
fn pretty(self, allocator: &'a RcAllocator) -> DocBuilder<'a, RcAllocator, A>
Converts
self
into a documentAuto Trait Implementations§
impl Freeze for RcAllocator
impl RefUnwindSafe for RcAllocator
impl Send for RcAllocator
impl Sync for RcAllocator
impl Unpin for RcAllocator
impl UnwindSafe for RcAllocator
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