XmlDocNode
Pennington.ApiMetadata
Discriminated union of node kinds that make up a parsed xmldoc tree.
Cases
CodeBlockNodeCodeBlockNode- Fenced code block from a
<code>element. CrefNodeCrefNode- Cross-reference from a
<see cref="..."/>or<see href="..."/>element. InlineCodeNodeInlineCodeNode- Inline code span from a
<c>element. ListNodeListNode- List block from a
<list>element. ParamRefNodeParamRefNode- Parameter reference from a
<paramref name="..."/>element. ParaNodeParaNode- Paragraph block from a
<para>element. TextNodeTextNode- Literal text content within an xmldoc node tree.
TypeParamRefNodeTypeParamRefNode- Type parameter reference from a
<typeparamref name="..."/>element.
Properties
Valueobject- Wrapped case instance; inspect via pattern matching on the case types.
Constructors
XmlDocNode
#public XmlDocNode(TextNode value)
Wraps a TextNode.
Parameters
valueTextNode
XmlDocNode
#public XmlDocNode(InlineCodeNode value)
Wraps an InlineCodeNode.
Parameters
valueInlineCodeNode
XmlDocNode
#public XmlDocNode(CodeBlockNode value)
Wraps a CodeBlockNode.
Parameters
valueCodeBlockNode
XmlDocNode
#public XmlDocNode(ParaNode value)
Wraps a ParaNode.
Parameters
valueParaNode
XmlDocNode
#public XmlDocNode(CrefNode value)
Wraps a CrefNode.
Parameters
valueCrefNode
XmlDocNode
#public XmlDocNode(ParamRefNode value)
Wraps a ParamRefNode.
Parameters
valueParamRefNode
XmlDocNode
#public XmlDocNode(TypeParamRefNode value)
Wraps a TypeParamRefNode.
Parameters
valueTypeParamRefNode
XmlDocNode
#public XmlDocNode(ListNode value)
Wraps a ListNode.
Parameters
valueListNode
Pennington.ApiMetadata.XmlDocNode
namespace Pennington.ApiMetadata;
/// Discriminated union of node kinds that make up a parsed xmldoc tree.
public struct XmlDocNode
{
/// Fenced code block from a <code> element.
public record CodeBlockNode(string Language, string Text) : object, IEquatable<CodeBlockNode>
/// Cross-reference from a <see cref="..."/> or <see href="..."/> element.
public record CrefNode(string CrefId, string DisplayText) : object, IEquatable<CrefNode>
/// Inline code span from a <c> element.
public record InlineCodeNode(string Text) : object, IEquatable<InlineCodeNode>
/// List block from a <list> element.
public record ListNode(string Kind, ImmutableArray<XmlDocListItem> Items) : object, IEquatable<ListNode>
/// Parameter reference from a <paramref name="..."/> element.
public record ParamRefNode(string ParamName) : object, IEquatable<ParamRefNode>
/// Paragraph block from a <para> element.
public record ParaNode(ImmutableArray<XmlDocNode> Children) : object, IEquatable<ParaNode>
/// Literal text content within an xmldoc node tree.
public record TextNode(string Text) : object, IEquatable<TextNode>
/// Type parameter reference from a <typeparamref name="..."/> element.
public record TypeParamRefNode(string ParamName) : object, IEquatable<TypeParamRefNode>
/// Wrapped case instance; inspect via pattern matching on the case types.
public object Value { get; }
/// Wraps a TextNode.
public XmlDocNode(TextNode value)
;
/// Wraps an InlineCodeNode.
public XmlDocNode(InlineCodeNode value)
;
/// Wraps a CodeBlockNode.
public XmlDocNode(CodeBlockNode value)
;
/// Wraps a ParaNode.
public XmlDocNode(ParaNode value)
;
/// Wraps a CrefNode.
public XmlDocNode(CrefNode value)
;
/// Wraps a ParamRefNode.
public XmlDocNode(ParamRefNode value)
;
/// Wraps a TypeParamRefNode.
public XmlDocNode(TypeParamRefNode value)
;
/// Wraps a ListNode.
public XmlDocNode(ListNode value)
;
}