def __call__(self,fname):
if fname.endswith('<STR_LIT>'):<EOL><INDENT>runnerClass = irunner.PythonRunner<EOL><DEDENT>elif fname.endswith('<STR_LIT>'):<EOL><INDENT>runnerClass = irunner.IPythonRunner<EOL><DEDENT>else:<EOL><INDENT>raise ValueError('<STR_LIT>' % fname)<EOL><DEDENT>if self.runner is None:<EOL><INDENT>return self._makeRunner(runnerClass)<EOL><DEDENT>else:<EOL><INDENT>if runnerClass==self.runnerClass:<EOL><INDENT>return self.runner<EOL><DEDENT>else:<EOL><INDENT>e='<STR_LIT>' %(self.runnerClass,fname)<EOL>raise ValueError(e)<EOL><DEDENT><DEDENT>
Return a runner for the given filename.