getWorkName(self))));
getWorkName(self))));*/
    public void visitFilter(SIRFilter self,			    SIRStream parent,			    JFieldDeclaration[] fields,			    JMethodDeclaration[] methods,			    JMethodDeclaration init,			    JMethodDeclaration work,			    CType inputType, CType outputType) {	// only worry about actual SIRFilter's, not special cases like	// FileReader's and FileWriter's	if (!self.needsWork()) {	    return;	}	// set stream type to filter	init.addStatement(new LIRSetStreamType(LoweringConstants.					       getStreamContext(),					       LIRStreamType.LIR_FILTER));	// set push count	init.addStatement(new LIRSetPush(LoweringConstants.					 getStreamContext(),					 self.getPushInt()));	// set peek count	init.addStatement(new LIRSetPeek(LoweringConstants.					 getStreamContext(),					 self.getPushInt()));	// set pop count	init.addStatement(new LIRSetPop(LoweringConstants.					getStreamContext(),					self.getPopInt()));	// set work function	init.addStatement(new LIRSetWork(LoweringConstants.					 getStreamContext(),					 new LIRFunctionPointer(					 LoweringConstants.					 getWorkName(self))));    }