private bool ShouldUseWrapper(MethodDefDeclaration targetMethod)
                {
                    if (targetMethod.Name == "ToString")
                    {
                        MethodDefDeclaration parent = targetMethod.GetParentDefinition(true);
                        if (parent != null)
                        {
                            if (parent.MatchesReference(
                                    this.transformationInstance.parent.assets.ToStringMethodSignature))
                            {
                                return(true);
                            }
                        }
                    }

                    for (int i = 0; i < targetMethod.Parameters.Count; i++)
                    {
                        ITypeSignature parameterType = targetMethod.Parameters[i].ParameterType;

                        if (!parameterType.BelongsToClassification(TypeClassifications.Intrinsic) ||
                            IntrinsicTypeSignature.Is(parameterType, IntrinsicType.Object))
                        {
                            return(true);
                        }
                    }

                    return(false);
                }
 private static void AppendFormatPlaceholder(int i, StringBuilder formatBuilder, ITypeSignature parameterType)
 {
     if (IntrinsicTypeSignature.Is(parameterType, IntrinsicType.String))
     {
         formatBuilder.AppendFormat("\"" + "{{{0}}}" + "\"", i);
     }
     else if (!parameterType.BelongsToClassification(TypeClassifications.Intrinsic) ||
              IntrinsicTypeSignature.Is(parameterType, IntrinsicType.Object))
     {
         formatBuilder.Append("{{");
         formatBuilder.AppendFormat("{{{0}}}", i);
         formatBuilder.Append("}}");
     }
     else
     {
         formatBuilder.AppendFormat("{{{0}}}", i);
     }
 }
 private static void AppendFormatPlaceholder(int i, StringBuilder formatBuilder, ITypeSignature parameterType)
 {
     if (IntrinsicTypeSignature.Is(parameterType, IntrinsicType.String))
     {
         formatBuilder.AppendFormat("\"" + "{{{0}}}" + "\"", i);
     }
     else if (!parameterType.BelongsToClassification(TypeClassifications.Intrinsic) ||
              IntrinsicTypeSignature.Is(parameterType, IntrinsicType.Object))
     {
         formatBuilder.Append("{{");
         formatBuilder.AppendFormat("{{{0}}}", i);
         formatBuilder.Append("}}");
     }
     else
     {
         formatBuilder.AppendFormat("{{{0}}}", i);
     }
 }