本文整理汇总了C#中Mono.CSharp.Class.GetSignatureForError方法的典型用法代码示例。如果您正苦于以下问题:C# Class.GetSignatureForError方法的具体用法?C# Class.GetSignatureForError怎么用?C# Class.GetSignatureForError使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mono.CSharp.Class
的用法示例。
在下文中一共展示了Class.GetSignatureForError方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VisitClass
private void VisitClass(Class c)
{
if (visitedClasses.Contains(c)) {
Skip = true;
return;
}
visitedClasses.Add(c);
switch (CurrentPass) {
case Pass.DiscoverClassesAndMethods: {
TypeSpec baseType = c.BaseType;
if (baseType != null) {
if (verbose) {
Console.WriteLine("[Auto-sealing] Found parent class {0} for class {1}.", baseType.GetSignatureForError(), c.GetSignatureForError());
}
baseTypes.Add (baseType);
if (baseType.MemberDefinition is ImportedTypeDefinition) {
// The base class is coming from another assembly - It will not be visited as part of this assembly
// But we still have to get some of its information recursively
// and visit all the methods
// TODO: Do the parsing work
}
}
break;
}
case Pass.FinalizeModifierFlags:
// Last class of a hierarchy are auto-sealed if they are not static
if (IsLeafClass(c.CurrentType) && ((c.ModFlags & Modifiers.STATIC) == 0)) {
if (verbose) {
Console.WriteLine("[Auto-sealing] Making class {0} sealed.", c.GetSignatureForError());
}
// When we seal here, we get proper compile error, however the class does not seem to be marked as sealed in IL
c.ModFlags |= Modifiers.SEALED;
}
break;
}
}