/// <summary> /// Add a header. /// </summary> public static void Header(this TokenStream stream, int depth, string text, SourceExtent extent, bool lineBreak) { stream.Add(new MarkdownToken() { Depth = depth, Extent = extent, Text = text, Type = MarkdownTokenType.Header, Flag = lineBreak ? MarkdownTokens.LineBreak : MarkdownTokens.LineEnding | MarkdownTokens.Preserve }); }
/// <summary> /// Get the extent and clear previous marker. /// </summary> /// <returns></returns> public SourceExtent GetExtent() { if (!_ExtentMarker.HasValue) { return(null); } var extent = new SourceExtent(_Source, null, _ExtentMarker.Value, _Position, _Line, _Column); _ExtentMarker = null; return(extent); }
/// <summary> /// Add a code fence. /// </summary> public static void FencedBlock(this TokenStream stream, string meta, string text, SourceExtent extent, bool lineBreak) { stream.Add(new MarkdownToken() { Extent = extent, Meta = meta, Text = text, Type = MarkdownTokenType.FencedBlock, Flag = (lineBreak ? MarkdownTokens.LineBreak : MarkdownTokens.LineEnding) | MarkdownTokens.Preserve }); }