当前位置: 首页>>代码示例>>C#>>正文


C# IEntity.IsObsolete方法代码示例

本文整理汇总了C#中IEntity.IsObsolete方法的典型用法代码示例。如果您正苦于以下问题:C# IEntity.IsObsolete方法的具体用法?C# IEntity.IsObsolete怎么用?C# IEntity.IsObsolete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IEntity的用法示例。


在下文中一共展示了IEntity.IsObsolete方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: AppendObsoleteAttribute

		void AppendObsoleteAttribute (StringBuilder result, CodeGenerationOptions options, IEntity entity)
		{
			string reason;
			if (!entity.IsObsolete (out reason))
				return;

			var implementingType = options.Part;
			var loc = implementingType.Region.End;
			
			var pf = implementingType.UnresolvedFile;
			var file = pf as CSharpUnresolvedFile;

			result.Append ("[");
			var obsoleteRef = ReflectionHelper.ParseReflectionName ("System.ObsoleteAttribute");
			var resolvedType = obsoleteRef.Resolve (options.ImplementingType.Compilation);
			var shortType = resolvedType.Kind != TypeKind.Unknown ? CreateShortType (options.ImplementingType.Compilation, file, loc, resolvedType) : null;
			var text = shortType != null ? shortType.GetText () : "System.Obsolete";
			if (text.EndsWith ("Attribute"))
				text = text.Substring (0, text.Length - "Attribute".Length);
			result.Append (text);
			if (!string.IsNullOrEmpty (reason)) {
				result.Append (" (\"");
				result.Append (reason);
				result.Append ("\")");
			}
			result.Append ("]");
			result.AppendLine ();
		}
开发者ID:ConorMurph1991,项目名称:monodevelop,代码行数:28,代码来源:CSharpCodeGenerator.cs

示例2: GetMarkup

		public string GetMarkup (IEntity entity)
		{
			if (entity == null)
				throw new ArgumentNullException ("entity");
			string result;
			switch (entity.SymbolKind) {
			case SymbolKind.TypeDefinition:
				result = GetTypeMarkup ((ITypeDefinition)entity);
				break;
			case SymbolKind.Field:
				result = GetFieldMarkup ((IField)entity);
				break;
			case SymbolKind.Property:
			case SymbolKind.Indexer:
				result = GetPropertyMarkup ((IProperty)entity);
				break;
			case SymbolKind.Event:
				result = GetEventMarkup ((IEvent)entity);
				break;
			case SymbolKind.Method:
			case SymbolKind.Operator:
				result = GetMethodMarkup ((IMethod)entity);
				break;
			case SymbolKind.Constructor:
				result = GetConstructorMarkup ((IMethod)entity);
				break;
			case SymbolKind.Destructor:
				result = GetDestructorMarkup ((IMethod)entity);
				break;
			default:
				throw new ArgumentOutOfRangeException ();
			}
			string reason;
			if (entity.IsObsolete (out reason)) {
				var attr =  reason == null ? "[Obsolete]" : "[Obsolete(\"" + reason + "\")]";
				result = "<span size=\"smaller\">" + attr + "</span>" + Environment.NewLine + result;
			}
			return result;
		}
开发者ID:Chertolom,项目名称:monodevelop,代码行数:39,代码来源:SignatureMarkupCreator.cs


注:本文中的IEntity.IsObsolete方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。