CompilationUnit astRoot= AST.parseCompilationUnit(cu, false);
CompilationUnit astRoot= AST.parseCompilationUnit(cu, false, null, null);
	public void testMethodDeclarationParamShuffel() throws Exception {		IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);		StringBuffer buf= new StringBuffer();		buf.append("package test1;\n");		buf.append("public abstract class E {\n");		buf.append("    public Object foo1(int i, boolean b) { return null; }\n");		buf.append("}\n");			ICompilationUnit cu= pack1.createCompilationUnit("E.java", buf.toString(), false, null);					CompilationUnit astRoot= AST.parseCompilationUnit(cu, false);		NewASTRewrite rewrite= new NewASTRewrite(astRoot.getAST());		AST ast= astRoot.getAST();		TypeDeclaration type= findTypeDeclaration(astRoot, "E");				{ // add extra dim, add throws			MethodDeclaration methodDecl= findMethodDeclaration(type, "foo1");						List params= methodDecl.parameters();						SingleVariableDeclaration first= (SingleVariableDeclaration) params.get(0);			SingleVariableDeclaration second= (SingleVariableDeclaration) params.get(1);			rewrite.markAsReplaced(first.getName(), ast.newSimpleName("x"));			rewrite.markAsReplaced(second.getName(), ast.newSimpleName("y"));							ASTNode copy1= rewrite.createCopyPlaceholder(first);			ASTNode copy2= rewrite.createCopyPlaceholder(second);						rewrite.markAsReplaced(first, copy2);			rewrite.markAsReplaced(second, copy1);					}			String preview= evaluateRewrite(cu, rewrite);				buf= new StringBuffer();		buf.append("package test1;\n");		buf.append("public abstract class E {\n");		buf.append("    public Object foo1(boolean y, int x) { return null; }\n");		buf.append("}\n");			assertEqualString(preview, buf.toString());	}	