示例#1
0
        public static string GetImageName(DmdMethodBase method, bool canBeModule)
        {
            if (method is DmdConstructorInfo)
            {
                return(GetImageName(method.DeclaringType, canBeModule));
            }
            if (method.IsStatic)
            {
                if (method.IsDefined("System.Runtime.CompilerServices.ExtensionAttribute", inherit: false))
                {
                    return(PredefinedDbgValueNodeImageNames.ExtensionMethod);
                }
            }
            switch (method.Attributes & DmdMethodAttributes.MemberAccessMask)
            {
            case DmdMethodAttributes.PrivateScope:  return(PredefinedDbgValueNodeImageNames.MethodCompilerControlled);

            case DmdMethodAttributes.Private:               return(PredefinedDbgValueNodeImageNames.MethodPrivate);

            case DmdMethodAttributes.FamANDAssem:   return(PredefinedDbgValueNodeImageNames.MethodFamilyAndAssembly);

            case DmdMethodAttributes.Assembly:              return(PredefinedDbgValueNodeImageNames.MethodAssembly);

            case DmdMethodAttributes.Family:                return(PredefinedDbgValueNodeImageNames.MethodFamily);

            case DmdMethodAttributes.FamORAssem:    return(PredefinedDbgValueNodeImageNames.MethodFamilyOrAssembly);

            case DmdMethodAttributes.Public:                return(PredefinedDbgValueNodeImageNames.MethodPublic);

            default:                                                                return(PredefinedDbgValueNodeImageNames.Method);
            }
        }
示例#2
0
 public static object GetColor(DmdMethodBase method, bool canBeModule)
 {
     if (method.IsConstructor)
     {
         return(Formatters.TypeFormatterUtils.GetTypeColor(method.DeclaringType, canBeModule));
     }
     if (method.IsStatic)
     {
         if (method.IsDefined("System.Runtime.CompilerServices.ExtensionAttribute", inherit: false))
         {
             return(BoxedTextColor.ExtensionMethod);
         }
         return(BoxedTextColor.StaticMethod);
     }
     return(BoxedTextColor.InstanceMethod);
 }
示例#3
0
 public static DbgTextColor GetColor(DmdMethodBase method, bool canBeModule)
 {
     if (method is DmdConstructorInfo)
     {
         return(GetColor(method.DeclaringType, canBeModule));
     }
     if (method.IsStatic)
     {
         if (method.IsDefined("System.Runtime.CompilerServices.ExtensionAttribute", inherit: false))
         {
             return(DbgTextColor.ExtensionMethod);
         }
         return(DbgTextColor.StaticMethod);
     }
     return(DbgTextColor.InstanceMethod);
 }