Gutenberg

Class MapAnnotationsDocumentRenderer<T, U>

An IDocumentRenderer<T> which wraps an IDocumentRenderer<T> by applying an asynchronous Func<T,TResult> to all of the annotations in the input Document<T>.

Inheritance
  • Object
  • MapAnnotationsDocumentRenderer<T, U>
Implements
Declaration
public class MapAnnotationsDocumentRenderer<T, U> : Object, IDocumentRenderer<T>
Type Parameters
Name Description

T

The type of annotations in the input Document<T>.

U

The type of annotations accepted by the wrapped IDocumentRenderer<T>.

Constructors

MapAnnotationsDocumentRenderer(Func<T, ValueTask<U>>, IDocumentRenderer<U>)

Create a MapAnnotationsDocumentRenderer<T, U>

Declaration
public MapAnnotationsDocumentRenderer(Func<T, ValueTask<U>> selector, IDocumentRenderer<U> wrapped)
Parameters
Type Name Description

Func<T, ValueTask<U>>

selector

The function to apply to the annotations

IDocumentRenderer<U>

wrapped

The wrapped document renderer

Methods

NewLine(CancellationToken)

Write a line break into the output stream.

Declaration
public ValueTask NewLine(CancellationToken cancellationToken = null)
Parameters
Type Name Description

CancellationToken

cancellationToken

A CancellationToken.

Returns
Type Description

ValueTask

A ValueTask which will complete when the line break has been written to the output stream

PopAnnotation(CancellationToken)

Discard the value of a previous call to PushAnnotation(T, CancellationToken)

Declaration
public ValueTask PopAnnotation(CancellationToken cancellationToken = null)
Parameters
Type Name Description

CancellationToken

cancellationToken

A CancellationToken.

Returns
Type Description

ValueTask

A ValueTask which will complete when the value has been popped from the stack

PushAnnotation(T, CancellationToken)

Accept an annotation

Declaration
public ValueTask PushAnnotation(T value, CancellationToken cancellationToken = null)
Parameters
Type Name Description

T

value

The annotation to push onto the stack

CancellationToken

cancellationToken

A CancellationToken.

Returns
Type Description

ValueTask

A ValueTask which will complete when the value has been pushed onto the stack

Text(ReadOnlyMemory<Char>, CancellationToken)

Write some text into the output stream

Declaration
public ValueTask Text(ReadOnlyMemory<char> memory, CancellationToken cancellationToken = null)
Parameters
Type Name Description

ReadOnlyMemory<Char>

memory

The text to write to the output stream

CancellationToken

cancellationToken

A CancellationToken.

Returns
Type Description

ValueTask

A ValueTask which will complete when the text has been written to the output stream

WhiteSpace(Int32, CancellationToken)

Write the given amount of blank space into the output stream.

Declaration
public ValueTask WhiteSpace(int amount, CancellationToken cancellationToken = null)
Parameters
Type Name Description

Int32

amount

The amount of white space to write

CancellationToken

cancellationToken

A CancellationToken.

Returns
Type Description

ValueTask

A ValueTask which will complete when the white space has been written to the output stream

Implements

IDocumentRenderer<T>