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 lineSource§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§fn column(
&'a self,
f: impl Fn(usize) -> Self::Doc + 'a,
) -> DocBuilder<'a, Self, A>
fn column( &'a self, f: impl Fn(usize) -> Self::Doc + 'a, ) -> DocBuilder<'a, Self, A>
Allocate a document that acts differently based on the position and page layout Read more
Source§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 UnsafeUnpin 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