JExpression[] args = new JExpression[params.length]; for (int i=0; i<args.length; i++) { args[i] = new JLocalVariableExpression(null, params[i]);
LinkedList args = new LinkedList(); for (int i=0; i<params.length; i++) { args.add(new JLocalVariableExpression(null, params[i]));
    private JMethodDeclaration makeSJInit() {	// start by cloning the original init function, so we can get	// the signature right	JMethodDeclaration result = (JMethodDeclaration)	    ObjectDeepCloner.deepCopy(origFilter.getInit());	// get the parameters	JFormalParameter[] params = result.getParameters();	// now build up the body as a series of calls to the sub-streams	LinkedList bodyList = new LinkedList();	for (ListIterator it = newFilters.listIterator(); it.hasNext(); ) {	    // build up the argument list	    JExpression[] args = new JExpression[params.length];	    for (int i=0; i<args.length; i++) {		args[i] = new JLocalVariableExpression(null, params[i]);	    }	    // make an init statement for the child	    bodyList.add(new SIRInitStatement(null, null, 					      args, (SIRStream)it.next()));	}	// replace the body of the init function with statement list	// we just made	result.setBody(new JBlock(null, bodyList, null));	// return result	return result;    }