def __create_matcher(self, match_class, **keywds):
matcher_args = keywds.copy()<EOL>del matcher_args['<STR_LIT>']<EOL>del matcher_args['<STR_LIT>']<EOL>if '<STR_LIT>' in matcher_args:<EOL><INDENT>del matcher_args['<STR_LIT>']<EOL><DEDENT>decl_matcher = decl_matcher = match_class(**matcher_args)<EOL>if keywds['<STR_LIT>']:<EOL><INDENT>self._logger.debug(<EOL>'<STR_LIT>',<EOL>str(decl_matcher))<EOL>return lambda decl: decl_matcher(decl) and keywds['<STR_LIT>'](decl)<EOL><DEDENT>self._logger.debug('<STR_LIT>', str(decl_matcher))<EOL>return decl_matcher<EOL>
implementation details