示例#1
0
        /// <summary>
        /// 类能否被继承
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        public static bool IsCanInherited(this Type type)
        {
            if (type.IsValueType || !type.IsClass || type == typeof(Delegate))
            {
                return(false);
            }

            var keyword = KeywordAnalysis.GetClassKeyword(type);

            if (keyword == ClassKeyword.Abstract || keyword == ClassKeyword.Sealed || keyword == ClassKeyword.Static)
            {
                return(false);
            }
            return(true);
        }
示例#2
0
 /// <summary>
 /// 获取修饰符
 /// </summary>
 /// <param name="info">字段</param>
 /// <returns></returns>
 public static FieldKeyword GetKeyword(this FieldInfo info)
 {
     return(KeywordAnalysis.GetFieldKeyword(info));
 }
 /// <summary>
 /// 获取方法关键字
 /// </summary>
 /// <param name="method"></param>
 /// <returns></returns>
 public static MethodKeyword GetKeyword(this MethodInfo method)
 {
     return(KeywordAnalysis.GetMethodKeyword(method));
 }
 /// <summary>
 /// 获取修饰符
 /// </summary>
 /// <param name="info"></param>
 /// <returns></returns>
 public static PropertyKeyword GetKeyword(this PropertyInfo info)
 {
     return(KeywordAnalysis.GetPropertyKeyword(info));
 }
示例#5
0
 /// <summary>
 /// 获取修饰符关键字
 /// </summary>
 /// <param name="type"></param>
 /// <returns></returns>
 public static ClassKeyword GetKeyword(this Type type)
 {
     return(KeywordAnalysis.GetClassKeyword(type));
 }