System.Runtime.Remoting.MetadataServices.SdlParser.URTMethod.GetMethodFlags C# (CSharp) Method

GetMethodFlags() private method

private GetMethodFlags ( MethodInfo method ) : int
method System.Reflection.MethodInfo
return int
            internal int GetMethodFlags(MethodInfo method)
            {
                int methodFlags = 0;
                MethodAttributes attributes = method.Attributes;
                MethodAttributes access = MethodAttributes.Family |
                                          MethodAttributes.FamORAssem |
                                          MethodAttributes.Public;
                if((attributes & access) == MethodAttributes.Family |
                   (attributes & access) == MethodAttributes.FamORAssem |
                   (attributes & access) == MethodAttributes.Public)
                {
                    if(method.Name == _methodName)
                    {
                        ParameterInfo[] parameters = method.GetParameters();
                        if(parameters.Length == _params.Count)
                        {
                            for(int i=0;i<parameters.Length;i++)
                            {
                                if(((URTParam) _params[i]).IsCompatibleType(parameters[i]) == false)
                                    return(methodFlags);
                            }

                            if((attributes & access) == MethodAttributes.Family |
                               (attributes & access) == MethodAttributes.FamORAssem)
                                methodFlags |= 2;
                            if((attributes & MethodAttributes.Virtual) != 0)
                                methodFlags |= 4;
                        }
                    }
                }

                return(methodFlags);
            }
            internal void AddParam(URTParam newParam)