def _call_proc(self,<EOL>proc: Callable[[Optional[str], Optional[str], argparse.Namespace], bool],<EOL>ifn: Optional[str],<EOL>ofn: Optional[str]) -> bool:
rslt = False<EOL>try:<EOL><INDENT>rslt = proc(ifn, ofn, self.opts)<EOL><DEDENT>except Exception as e:<EOL><INDENT>self._proc_error(ifn, e)<EOL><DEDENT>return True if rslt or rslt is None else False<EOL>
Call the actual processor and intercept anything that goes wrong
        :param proc: Process to call
        :param ifn: Input file name to process.  If absent, typical use is stdin
        :param ofn: Output file name. If absent, typical use is stdout
        :return: true means process was successful