跳转至

MethodData

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

继承链: System.Object → Runestone.AesirModules.ScriptDocGenerator.MemberData → MethodData

实现接口: Runestone.AesirModules.ScriptDocGenerator.IDerivedMemberData,Runestone.AesirModules.ScriptDocGenerator.IMemberData,Runestone.AesirModules.ScriptDocGenerator.IMethodData

声明

[Serializable]
public class MethodData : Runestone.AesirModules.ScriptDocGenerator.MemberData, 
Runestone.AesirModules.ScriptDocGenerator.IDerivedMemberData, 
Runestone.AesirModules.ScriptDocGenerator.IMemberData, 
Runestone.AesirModules.ScriptDocGenerator.IMethodData

方法解析数据类,用于存储 MethodInfo 的解析结果

构造方法

MethodData(MethodInfo, IAttributeFilter)

public MethodData(MethodInfo memberInfo, IAttributeFilter filter = null)

参数

名称 类型 说明
memberInfo MethodInfo —
filter IAttributeFilter —

属性

声明的属性

名称 描述
AccessModifier 方法的访问修饰符类型
Parameters 方法的参数解析数据数组,分析期从反射直接结构化产出
ParamSummaries 参数级注释字典(XML 标签),键为参数名。无参数注释时为 null
MemberType 方法的成员类型
ReturnType 方法的返回类型
IsAbstract 是否为抽象方法(abstract)
IsAsync 是否为异步方法(async)
IsFromAncestor 是否从祖先类继承的重写方法,在该子类的方法签名中不一定带有 override 关键字
IsFromInterfaceImplement 是否从接口实现的方法
IsOperator 是否为运算符方法(operator)
IsOverloadMethodInDeclaringType 是否为声明类型中的重载方法
IsOverride 是否有重写方法(override)的特性,方法签名中不一定带有 override 关键字
IsStatic 是否为静态方法(static)
IsVirtual 是否有虚拟方法(virtual)的特性,方法签名中不一定带有 virtual 关键字
AccessModifierName 方法的访问修饰符名称字符串
FullDeclarationWithAttributes 包含特性的完整方法声明字符串,包含特性声明和方法签名
MemberTypeName 方法的成员类型名称字符串
ParametersDeclaration 方法的参数声明字符串,包含参数名称和类型
ReturnTypeFullName 方法的返回值完整类型名称字符串
ReturnTypeName 方法的返回类型名称字符串
ReturnsSummary 返回值注释(XML 标签)。无注释时为 null
Signature 方法的签名字符串
SignatureWithoutParameters 不包含参数的简单方法签名

继承的属性

名称 描述 声明类型
DeclaringType 声明此成员的类型 MemberData
ReflectedType 通过反射获取该成员的类型 MemberData
IsFromInheritance 成员是否从继承中获取,这里的成员不包括 Type 类型 MemberData
IsObsolete 是否已过时 MemberData
AttributesDeclaration 特性声明字符串 MemberData
DeclaringTypeFullName 声明类型的完整名称,包括命名空间 MemberData
DeclaringTypeName 声明类型的名称 MemberData
Name 成员名称 MemberData
ReflectedTypeFullName 通过反射获取该成员的类型的完整名称,包括命名空间 MemberData
ReflectedTypeName 通过反射获取该成员的类型名称 MemberData
RemarksSummary 备注注释(XML 标签)。无注释时为 null MemberData
SummaryAttributeValue 注释 MemberData

AccessModifier

方法的访问修饰符类型

public AccessModifierType AccessModifier { get; }

Parameters

方法的参数解析数据数组,分析期从反射直接结构化产出

public IParameterData[] Parameters { get; }

ParamSummaries

参数级注释字典(XML 标签),键为参数名。无参数注释时为 null

public IReadOnlyDictionary<string, string> ParamSummaries { get; }

MemberType

方法的成员类型

public MemberTypes MemberType { get; }

ReturnType

方法的返回类型

public Type ReturnType { get; }

IsAbstract

是否为抽象方法(abstract)

public bool IsAbstract { get; }

IsAsync

是否为异步方法(async)

public bool IsAsync { get; }

IsFromAncestor

是否从祖先类继承的重写方法,在该子类的方法签名中不一定带有 override 关键字

public bool IsFromAncestor { get; }

IsFromInterfaceImplement

是否从接口实现的方法

public bool IsFromInterfaceImplement { get; }

IsOperator

是否为运算符方法(operator)

public bool IsOperator { get; }

IsOverloadMethodInDeclaringType

是否为声明类型中的重载方法

public bool IsOverloadMethodInDeclaringType { get; set; }

IsOverride

是否有重写方法(override)的特性,方法签名中不一定带有 override 关键字

public bool IsOverride { get; }

IsStatic

是否为静态方法(static)

public bool IsStatic { get; }

IsVirtual

是否有虚拟方法(virtual)的特性,方法签名中不一定带有 virtual 关键字

public bool IsVirtual { get; }

AccessModifierName

方法的访问修饰符名称字符串

public string AccessModifierName { get; }

FullDeclarationWithAttributes

包含特性的完整方法声明字符串,包含特性声明和方法签名

public string FullDeclarationWithAttributes { get; }

MemberTypeName

方法的成员类型名称字符串

public string MemberTypeName { get; }

ParametersDeclaration

方法的参数声明字符串,包含参数名称和类型

public string ParametersDeclaration { get; }

ReturnTypeFullName

方法的返回值完整类型名称字符串

public string ReturnTypeFullName { get; }

ReturnTypeName

方法的返回类型名称字符串

public string ReturnTypeName { get; }

ReturnsSummary

返回值注释(XML 标签)。无注释时为 null

public string ReturnsSummary { get; }

Signature

方法的签名字符串

public string Signature { get; private set; }

SignatureWithoutParameters

不包含参数的简单方法签名

public string SignatureWithoutParameters { get; }

方法

声明的方法

名称 描述
AddOverloadPrefix() 为方法添加重载前缀([Overload])
GetMethodKeywordSnippet(MethodInfo) 获取方法的关键字片段字符串

继承的方法

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

AddOverloadPrefix()

为方法添加重载前缀([Overload])

public void AddOverloadPrefix()

GetMethodKeywordSnippet(MethodInfo)

获取方法的关键字片段字符串

public static string GetMethodKeywordSnippet(MethodInfo methodInfo)

参数

名称 类型 说明
methodInfo MethodInfo —

返回值

类型 说明
string —

Additional Notes

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