Microsoft.CSharp.RuntimeBinder.SymbolTable.GetTypeOfParameter C# (CSharp) Метод

GetTypeOfParameter() приватный Метод

private GetTypeOfParameter ( ParameterInfo p, MemberInfo m ) : CType
p System.Reflection.ParameterInfo
m System.Reflection.MemberInfo
Результат Microsoft.CSharp.RuntimeBinder.Semantics.CType
        private CType GetTypeOfParameter(ParameterInfo p, MemberInfo m)
        {
            Type t = p.ParameterType;
            CType ctype;
            if (t.IsGenericParameter && t.GetTypeInfo().DeclaringMethod != null && t.GetTypeInfo().DeclaringMethod == m)
            {
                // If its a method type parameter from ourselves, just find it.
                ctype = LoadMethodTypeParameter(FindMethodFromMemberInfo(m), t);
            }
            else
            {
                ctype = GetCTypeFromType(t);
            }

            // Check if we have an out parameter.
            if (ctype.IsParameterModifierType() && p.IsOut && !p.IsIn)
            {
                CType parameterType = ctype.AsParameterModifierType().GetParameterType();
                ctype = _typeManager.GetParameterModifier(parameterType, true);
            }

            return ctype;
        }