API Reference

Class

MarkdownDocumentTransformContext

Namespace OfficeIMO.Markdown
Assembly OfficeIMO.Markdown
Modifiers sealed

Context passed to markdown document transforms.

Inheritance

  • Object
  • MarkdownDocumentTransformContext

Usage

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Constructors

MarkdownDocumentTransformContext 6 overloads
public MarkdownDocumentTransformContext(MarkdownDocumentTransformSource source, Object sourceOptions) #

Creates a transform context for a reader-driven pipeline.

Parameters

source OfficeIMO.Markdown.MarkdownDocumentTransformSource requiredposition: 0
readerOptions OfficeIMO.Markdown.MarkdownReaderOptions = null requiredposition: 1
MarkdownDocumentTransformContext(OfficeIMO.Markdown.MarkdownDocumentTransformSource source, System.Object sourceOptions) #

Creates a transform context for an HTML-import pipeline.

Parameters

source OfficeIMO.Markdown.MarkdownDocumentTransformSource required
sourceOptions System.Object required
public MarkdownDocumentTransformContext(MarkdownDocumentTransformSource source, MarkdownReaderOptions readerOptions, Object sourceOptions) #

Creates a transform context for pipelines that want both reader options and source options, such as renderer-owned AST transforms that run after markdown parsing.

Parameters

source OfficeIMO.Markdown.MarkdownDocumentTransformSource requiredposition: 0
readerOptions OfficeIMO.Markdown.MarkdownReaderOptions requiredposition: 1
sourceOptions System.Object requiredposition: 2
public MarkdownDocumentTransformContext(MarkdownDocumentTransformSource source, MarkdownReaderOptions readerOptions, Object sourceOptions, ICollection<MarkdownDocumentTransformDiagnostic> diagnostics) #

Creates a transform context with an explicit diagnostics sink.

Parameters

source OfficeIMO.Markdown.MarkdownDocumentTransformSource requiredposition: 0
readerOptions OfficeIMO.Markdown.MarkdownReaderOptions requiredposition: 1
sourceOptions System.Object requiredposition: 2
diagnostics System.Collections.Generic.ICollection{OfficeIMO.Markdown.MarkdownDocumentTransformDiagnostic} requiredposition: 3
public MarkdownDocumentTransformContext(MarkdownDocumentTransformSource source, MarkdownReaderOptions readerOptions, Object sourceOptions, ICollection<MarkdownDocumentTransformDiagnostic> diagnostics, MarkdownSyntaxNode syntaxTree) #

Creates a transform context with diagnostics and an original syntax tree.

Parameters

source OfficeIMO.Markdown.MarkdownDocumentTransformSource requiredposition: 0
readerOptions OfficeIMO.Markdown.MarkdownReaderOptions requiredposition: 1
sourceOptions System.Object requiredposition: 2
diagnostics System.Collections.Generic.ICollection{OfficeIMO.Markdown.MarkdownDocumentTransformDiagnostic} requiredposition: 3
syntaxTree OfficeIMO.Markdown.MarkdownSyntaxNode requiredposition: 4
public MarkdownDocumentTransformContext(MarkdownDocumentTransformSource source, MarkdownReaderOptions readerOptions, Object sourceOptions, ICollection<MarkdownDocumentTransformDiagnostic> diagnostics, MarkdownSyntaxNode syntaxTree, IReadOnlyList<Nullable<MarkdownSourceSpan>> topLevelBlockSourceSpans, String sourceMarkdown = null, String originalMarkdown = null, Boolean preservesOriginalMarkdown = false) #

Creates a transform context with diagnostics, syntax tree, and explicit top-level block source spans.

Parameters

source OfficeIMO.Markdown.MarkdownDocumentTransformSource requiredposition: 0
readerOptions OfficeIMO.Markdown.MarkdownReaderOptions requiredposition: 1
sourceOptions System.Object requiredposition: 2
diagnostics System.Collections.Generic.ICollection{OfficeIMO.Markdown.MarkdownDocumentTransformDiagnostic} requiredposition: 3
syntaxTree OfficeIMO.Markdown.MarkdownSyntaxNode requiredposition: 4
topLevelBlockSourceSpans System.Collections.Generic.IReadOnlyList{System.Nullable{OfficeIMO.Markdown.MarkdownSourceSpan}} requiredposition: 5
sourceMarkdown System.String = null optionalposition: 6
originalMarkdown System.String = null optionalposition: 7
preservesOriginalMarkdown System.Boolean = false optionalposition: 8

Methods

public MarkdownSyntaxNode FindSyntaxNode(Object associatedObject) #
Returns: MarkdownSyntaxNode

Finds the syntax-tree node associated with a parsed model object before the transform pipeline started.

Parameters

associatedObject System.Object requiredposition: 0
TryCreateOriginalSourceSlice 6 overloads
public Boolean TryCreateOriginalSourceSlice(MarkdownSourceSpan sourceSpan, out MarkdownSourceSlice slice) #
Returns: Boolean

Creates an original-input source slice for the syntax node associated with a parsed model object.

Parameters

associatedObject System.Object requiredposition: 0
slice OfficeIMO.Markdown.MarkdownSourceSlice@ requiredposition: 1
public Boolean TryCreateOriginalSourceSlice(MarkdownSourceSpan sourceSpan, out MarkdownSourceSlice slice, out MarkdownOriginalSourceSliceFailureReason failureReason) #
Returns: Boolean

Creates an original-input source slice for the syntax node associated with a parsed model object.

Parameters

associatedObject System.Object requiredposition: 0
slice OfficeIMO.Markdown.MarkdownSourceSlice@ requiredposition: 1
failureReason OfficeIMO.Markdown.MarkdownOriginalSourceSliceFailureReason@ requiredposition: 2
TryCreateOriginalSourceSlice(OfficeIMO.Markdown.MarkdownSyntaxNode syntaxNode, OfficeIMO.Markdown.MarkdownSourceSlice@ slice) #

Creates an original-input source slice for the supplied syntax node.

Parameters

syntaxNode OfficeIMO.Markdown.MarkdownSyntaxNode required
slice OfficeIMO.Markdown.MarkdownSourceSlice@ required
TryCreateOriginalSourceSlice(OfficeIMO.Markdown.MarkdownSyntaxNode syntaxNode, OfficeIMO.Markdown.MarkdownSourceSlice@ slice, OfficeIMO.Markdown.MarkdownOriginalSourceSliceFailureReason@ failureReason) #

Creates an original-input source slice for the supplied syntax node.

Parameters

syntaxNode OfficeIMO.Markdown.MarkdownSyntaxNode required
slice OfficeIMO.Markdown.MarkdownSourceSlice@ required
failureReason OfficeIMO.Markdown.MarkdownOriginalSourceSliceFailureReason@ required
TryCreateOriginalSourceSlice(OfficeIMO.Markdown.MarkdownSourceSpan sourceSpan, OfficeIMO.Markdown.MarkdownSourceSlice@ slice) #

Creates an original-input source slice for a token or field source span captured during parsing.

Parameters

sourceSpan OfficeIMO.Markdown.MarkdownSourceSpan required
slice OfficeIMO.Markdown.MarkdownSourceSlice@ required
TryCreateOriginalSourceSlice(OfficeIMO.Markdown.MarkdownSourceSpan sourceSpan, OfficeIMO.Markdown.MarkdownSourceSlice@ slice, OfficeIMO.Markdown.MarkdownOriginalSourceSliceFailureReason@ failureReason) #

Creates an original-input source slice for a token or field source span captured during parsing.

Parameters

sourceSpan OfficeIMO.Markdown.MarkdownSourceSpan required
slice OfficeIMO.Markdown.MarkdownSourceSlice@ required
failureReason OfficeIMO.Markdown.MarkdownOriginalSourceSliceFailureReason@ required
TryCreateSourceSlice 3 overloads
public Boolean TryCreateSourceSlice(MarkdownSourceSpan sourceSpan, out MarkdownSourceSlice slice) #
Returns: Boolean

Creates a normalized source slice for the syntax node associated with a parsed model object.

Parameters

associatedObject System.Object requiredposition: 0
slice OfficeIMO.Markdown.MarkdownSourceSlice@ requiredposition: 1
TryCreateSourceSlice(OfficeIMO.Markdown.MarkdownSyntaxNode syntaxNode, OfficeIMO.Markdown.MarkdownSourceSlice@ slice) #

Creates a normalized source slice for the supplied syntax node.

Parameters

syntaxNode OfficeIMO.Markdown.MarkdownSyntaxNode required
slice OfficeIMO.Markdown.MarkdownSourceSlice@ required
TryCreateSourceSlice(OfficeIMO.Markdown.MarkdownSourceSpan sourceSpan, OfficeIMO.Markdown.MarkdownSourceSlice@ slice) #

Creates a normalized source slice for a token or field source span captured during parsing.

Parameters

sourceSpan OfficeIMO.Markdown.MarkdownSourceSpan required
slice OfficeIMO.Markdown.MarkdownSourceSlice@ required

Properties

public MarkdownDocumentTransformSource Source { get; } #

Source of the current transform pipeline invocation.

public MarkdownReaderOptions ReaderOptions { get; } #

Reader options used when the pipeline runs after markdown parsing.

public Object SourceOptions { get; } #

Source options object used by the caller when the pipeline runs outside the markdown reader.

public ICollection<MarkdownDocumentTransformDiagnostic> Diagnostics { get; } #

Optional diagnostics sink populated by the document transform pipeline.

public MarkdownSyntaxNode SyntaxTree { get; } #

Optional original syntax tree for the document before the current transform pipeline runs.

public IReadOnlyList<Nullable<MarkdownSourceSpan>> TopLevelBlockSourceSpans { get; } #

Optional per-top-level-block source spans for the document before the current transform pipeline runs.

public String SourceMarkdown { get; } #

Normalized markdown source text used to compute SyntaxTree source spans.

public String OriginalMarkdown { get; } #

Raw markdown input retained when trivia preservation is enabled; otherwise this falls back to SourceMarkdown.

public Boolean PreservesOriginalMarkdown { get; } #

Indicates whether OriginalMarkdown contains the exact reader input captured before normalization.