跳转至

XmlCodePart

  • 种类: class
  • 命名空间: Runestone.AesirModules.ScriptDocGenerator.Editor
  • 程序集: Runestone.AesirModules.Editor.OdinInspector

继承链: System.Object → XmlCodePart

声明

[Serializable]
public class XmlCodePart

XML 注释部分和代码块的组合。

构造方法

名称 描述
XmlCodePart(string, string) —

XmlCodePart(string, string)

public XmlCodePart(string xml, string code)

参数

名称 类型 说明
xml string —
code string —

字段

名称 描述
code 不以注释开头的代码块,除了注释对应的成员外,可能包含多个成员。
xml 注释部分的源代码,以 /// 开头。

code

不以注释开头的代码块,除了注释对应的成员外,可能包含多个成员。

public string code;

xml

注释部分的源代码,以 /// 开头。

public string xml;

属性

名称 描述
HasNonFirstMemberSummaryAttribute 块内首成员声明之后是否存在任何 [Summary] 特性(属于块内其他成员)。 此时工具不能安全判断归属——Sync/Replace/Remove 三模式均跳过本块并告警 (fail-closed,避免误删/误注非首成员的特性)。
XmlHasSummaryTag —
CodeAfterLeadingPreprocessor code 去掉开头预处理指令行后的内容。
LeadingPreprocessorLines code 开头的连续预处理指令行(如 #if、#elif、#else),确保添加 [Summary] 时位于条件编译块内部。
PreferredSummaryContent 首选 Summary 内容:[Summary] 特性优先(特性为权威源),无特性或特性无法解析时回退 XML summary。
RemoveAllSummaryAttributeCode 删除了所有 [Summary()] 部分的代码块(不含开头预处理指令行)。
RemovedFirstSummaryAttributeCode 删除了第一个 [Summary()] 部分的代码块(不含开头预处理指令行)。
RemovedSummaryXml 删除了 summary 标签部分的 xml。
SummaryAttributeContent 代码块中属于"XML 注释归属成员(块内首成员)"的 [Summary] 特性文本内容(已反转义)。 不存在、无法解析或首个 [Summary] 属于块内非首成员时为 null。
SummaryValue 从 xml 中提取 Summary 的内容(压缩空白、剥离子标签、解码 XML 实体)。

HasNonFirstMemberSummaryAttribute

块内首成员声明之后是否存在任何 [Summary] 特性(属于块内其他成员)。 此时工具不能安全判断归属——Sync/Replace/Remove 三模式均跳过本块并告警 (fail-closed,避免误删/误注非首成员的特性)。

public bool HasNonFirstMemberSummaryAttribute { get; }

XmlHasSummaryTag

public bool XmlHasSummaryTag { get; }

CodeAfterLeadingPreprocessor

code 去掉开头预处理指令行后的内容。

public string CodeAfterLeadingPreprocessor { get; }

LeadingPreprocessorLines

code 开头的连续预处理指令行(如 #if、#elif、#else),确保添加 [Summary] 时位于条件编译块内部。

public string LeadingPreprocessorLines { get; }

PreferredSummaryContent

首选 Summary 内容:[Summary] 特性优先(特性为权威源),无特性或特性无法解析时回退 XML summary。

public string PreferredSummaryContent { get; }

RemoveAllSummaryAttributeCode

删除了所有 [Summary()] 部分的代码块(不含开头预处理指令行)。

public string RemoveAllSummaryAttributeCode { get; }

RemovedFirstSummaryAttributeCode

删除了第一个 [Summary()] 部分的代码块(不含开头预处理指令行)。

public string RemovedFirstSummaryAttributeCode { get; }

RemovedSummaryXml

删除了 summary 标签部分的 xml。

public string RemovedSummaryXml { get; }

SummaryAttributeContent

代码块中属于"XML 注释归属成员(块内首成员)"的 [Summary] 特性文本内容(已反转义)。 不存在、无法解析或首个 [Summary] 属于块内非首成员时为 null。

public string SummaryAttributeContent { get; }

SummaryValue

从 xml 中提取 Summary 的内容(压缩空白、剥离子标签、解码 XML 实体)。

public string SummaryValue { get; }

方法

声明的方法

名称 描述
GetReplaceAllOutput() 获取删除了 SummaryAttribute 的代码。块内非首成员持有 [Summary] 时跳过并告警(fail-closed)。
GetReplaceOutput() 获取替换了 summary 标签的代码:内容首选 [Summary] 特性(特性为权威源),无特性时取 XML; 移除 XML summary 标签,并在前导预处理指令之后写入单行 [Summary] 特性。 块内非首成员持有 [Summary] 时跳过并告警(fail-closed)。
GetSummaryAlignedXml(string) 以指定文本回写 XML 的 summary 标签内容(单行形式,保留原缩进),用于特性优先的双向对齐。
GetSummaryAttributeText(string) 获取以指定内容生成的 [Summary] 特性行(内容经 C# 转义,缩进与 XML 注释块一致)。
GetSyncOutput() 获取同步 Summary 后的代码(双向对齐,[Summary] 特性优先): 已有可解析的特性时特性为权威内容——与 XML 不一致则以特性文本回写 XML summary,代码保持原样; 无特性时维持原有行为——以 XML 内容生成特性,插在前导预处理指令之后。 块内非首成员持有 [Summary] 时跳过并告警(fail-closed)。

继承的方法

名称 描述 声明类型
GetType() — object
Equals(object) — object
GetHashCode() — object
ToString() — object
MemberwiseClone() — object
Finalize() — object

GetReplaceAllOutput()

获取删除了 SummaryAttribute 的代码。块内非首成员持有 [Summary] 时跳过并告警(fail-closed)。

public string GetReplaceAllOutput()

返回值

类型 说明
string —

GetReplaceOutput()

获取替换了 summary 标签的代码:内容首选 [Summary] 特性(特性为权威源),无特性时取 XML; 移除 XML summary 标签,并在前导预处理指令之后写入单行 [Summary] 特性。 块内非首成员持有 [Summary] 时跳过并告警(fail-closed)。

public string GetReplaceOutput()

返回值

类型 说明
string —

GetSummaryAlignedXml(string)

以指定文本回写 XML 的 summary 标签内容(单行形式,保留原缩进),用于特性优先的双向对齐。

public string GetSummaryAlignedXml(string content)

参数

名称 类型 说明
content string —

返回值

类型 说明
string —

GetSummaryAttributeText(string)

获取以指定内容生成的 [Summary] 特性行(内容经 C# 转义,缩进与 XML 注释块一致)。

public string GetSummaryAttributeText(string content)

参数

名称 类型 说明
content string —

返回值

类型 说明
string —

GetSyncOutput()

获取同步 Summary 后的代码(双向对齐,[Summary] 特性优先): 已有可解析的特性时特性为权威内容——与 XML 不一致则以特性文本回写 XML summary,代码保持原样; 无特性时维持原有行为——以 XML 内容生成特性,插在前导预处理指令之后。 块内非首成员持有 [Summary] 时跳过并告警(fail-closed)。

public string GetSyncOutput()

返回值

类型 说明
string —

Additional Notes

首个 ## Additional Notes 是增量生成文档标识符,请勿修改标题级别和内容!本文档由 Script Doc Generator 辅助生成。