PY-453: List of possible parameters in extract method can​'​t be reset

This commit is contained in:
Oleg Shpynov
2010-02-03 18:43:53 +03:00
parent 16f0c5d76a
commit 9e1d3ddf6e
@@ -223,6 +223,21 @@ public class PyExtractMethodUtil {
RefactoringFactory.getInstance(project).createRename(parameter, newName).run();
}
}
// Change signature according to pass settings
final StringBuilder builder = new StringBuilder();
for (AbstractVariableData data : variableData) {
if (data.isPassAsParameter()){
if (builder.length() != 0){
builder.append(", ");
}
builder.append(data.name);
}
}
builder.insert(0, "def foo(");
builder.append(")\n pass");
final PyParameterList pyParameterList =
PythonLanguage.getInstance().getElementGenerator().createFromText(project, PyFunction.class, builder.toString()).getParameterList();
generatedMethod.getParameterList().replace(pyParameterList);
}
private static Map<String, String> createMap(final AbstractVariableData[] variableData) {