本文整理汇总了C#中Internal.Metadata.NativeFormat.MetadataReader.GetTypeReference方法的典型用法代码示例。如果您正苦于以下问题:C# MetadataReader.GetTypeReference方法的具体用法?C# MetadataReader.GetTypeReference怎么用?C# MetadataReader.GetTypeReference使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Internal.Metadata.NativeFormat.MetadataReader
的用法示例。
在下文中一共展示了MetadataReader.GetTypeReference方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ComputeHashCode
public static int ComputeHashCode(this TypeReferenceHandle typeRefHandle, MetadataReader reader)
{
HashCodeBuilder builder = new HashCodeBuilder("");
TypeReference typeRef = reader.GetTypeReference(typeRefHandle);
HandleType parentHandleType = typeRef.ParentNamespaceOrType.HandleType;
bool isNested = parentHandleType == HandleType.TypeReference;
if (!isNested)
{
Debug.Assert(parentHandleType == HandleType.NamespaceReference);
AppendNamespaceHashCode(ref builder, typeRef.ParentNamespaceOrType.ToNamespaceReferenceHandle(reader), reader);
}
string typeName = reader.GetString(typeRef.TypeName);
builder.Append(typeName);
if (isNested)
{
int enclosingTypeHashCode = typeRef.ParentNamespaceOrType.ToTypeReferenceHandle(reader).ComputeHashCode(reader);
return TypeHashingAlgorithms.ComputeNestedTypeHashCode(enclosingTypeHashCode, builder.ToHashCode());
}
return builder.ToHashCode();
}
示例2: GetTypeReference
} // Offset
public TypeReference GetTypeReference(MetadataReader reader)
{
return reader.GetTypeReference(this);
} // GetTypeReference