Пример #1
0
        internal override string ConstructName()
        {
            StringBuilder builder = new StringBuilder(this.Name);

            if (this.IsGenericMethod)
            {
                builder.Append(RuntimeMethodHandle.ConstructInstantiation(this));
            }
            builder.Append("(");
            builder.Append(MethodBase.ConstructParameters(this.GetParametersNoCopy(), this.CallingConvention));
            builder.Append(")");
            return(builder.ToString());
        }
Пример #2
0
        // Token: 0x0600462F RID: 17967 RVA: 0x000FF524 File Offset: 0x000FD724
        internal override string FormatNameAndSig(bool serialization)
        {
            StringBuilder       stringBuilder = new StringBuilder(this.Name);
            TypeNameFormatFlags format        = serialization ? TypeNameFormatFlags.FormatSerialization : TypeNameFormatFlags.FormatBasic;

            if (this.IsGenericMethod)
            {
                stringBuilder.Append(RuntimeMethodHandle.ConstructInstantiation(this, format));
            }
            stringBuilder.Append("(");
            stringBuilder.Append(MethodBase.ConstructParameters(this.GetParameterTypes(), this.CallingConvention, serialization));
            stringBuilder.Append(")");
            return(stringBuilder.ToString());
        }
Пример #3
0
        private string FormatNameAndSig()
        {
            // Serialization uses ToString to resolve MethodInfo overloads.
            StringBuilder sbName = new StringBuilder(Name);

            if (IsGenericMethod)
                sbName.Append(RuntimeMethodHandle.ConstructInstantiation(this, TypeNameFormatFlags.FormatBasic));

            sbName.Append('(');
            RuntimeParameterInfo.FormatParameters(sbName, GetParametersNoCopy(), CallingConvention);
            sbName.Append(')');

            return sbName.ToString();
        }
Пример #4
0
        internal override string FormatNameAndSig(bool serialization)
        {
            // Serialization uses ToString to resolve MethodInfo overloads.
            StringBuilder sbName = new StringBuilder(Name);

            // serialization == true: use unambiguous (except for assembly name) type names to distinguish between overloads.
            // serialization == false: use basic format to maintain backward compatibility of MethodInfo.ToString().
            TypeNameFormatFlags format = serialization ? TypeNameFormatFlags.FormatSerialization : TypeNameFormatFlags.FormatBasic;

            if (IsGenericMethod)
                sbName.Append(RuntimeMethodHandle.ConstructInstantiation(this, format));

            sbName.Append("(");
            sbName.Append(ConstructParameters(GetParameterTypes(), CallingConvention, serialization));
            sbName.Append(")");

            return sbName.ToString();
        }
Пример #5
0
        // copied from CoreCLR's RuntimeMethodInfo
        public override string ToString()
        {
            if (toString == null)
            {
                var sbName = new ValueStringBuilder(MethodNameBufferSize);

                sbName.Append(ReturnType.FormatTypeName());
                sbName.Append(' ');
                sbName.Append(Name);

                if (IsGenericMethod)
                    sbName.Append(RuntimeMethodHandle.ConstructInstantiation(this, TypeNameFormatFlags.FormatBasic));

                sbName.Append('(');
                AppendParameters(ref sbName, GetParameterTypes(), CallingConvention);
                sbName.Append(')');

                toString = sbName.ToString();
            }

            return toString;
        }