static PrintContext WriteVars(PrintContext ctx) { var info = ctx.Info; var vars = new string[info.Arguments.Length]; for (int index = 0; index < info.Arguments.Length; index++) { var arg = info.Arguments[index]; if (arg == null) { continue; // nulls are handled by NullFormatter } if (arg is OwnFormatter) { continue; // check if it can format itself } if (ctx.CustomFormatters.Any(f => f.CanFormat(arg))) { continue; // check with out formatters } // get a new variable name (it might be taken already!) var methodParamName = ctx.ForBaseName(info.Method.GetParameters()[index].Name).Next(); vars[index] = methodParamName; ctx.Builder.AppendLine( new string(' ', ctx.SpaceIndentation) + ctx.VariableFormatter.Format(arg, methodParamName)); } return(ctx.SetWrittenVars(vars)); }
static PrintContext WriteVars(PrintContext ctx) { var info = ctx.Info; var vars = new string[info.Arguments.Length]; for (int index = 0; index < info.Arguments.Length; index++) { var arg = info.Arguments[index]; if (arg == null) continue; // nulls are handled by NullFormatter if (arg is OwnFormatter) continue; // check if it can format itself if (ctx.CustomFormatters.Any(f => f.CanFormat(arg))) continue; // check with out formatters // get a new variable name (it might be taken already!) var methodParamName = ctx.ForBaseName(info.Method.GetParameters()[index].Name).Next(); vars[index] = methodParamName; ctx.Builder.AppendLine( new string(' ', ctx.SpaceIndentation) + ctx.VariableFormatter.Format(arg, methodParamName)); } return ctx.SetWrittenVars(vars); }