def register_checker(self, checker):
assert checker.priority <= <NUM_LIT:0>, "<STR_LIT>"<EOL>self._checkers[checker.name].append(checker)<EOL>for r_id, r_title, r_cb in checker.reports:<EOL><INDENT>self.register_report(r_id, r_title, r_cb, checker)<EOL><DEDENT>self.register_options_provider(checker)<EOL>if hasattr(checker, "<STR_LIT>"):<EOL><INDENT>self.msgs_store.register_messages_from_checker(checker)<EOL><DEDENT>checker.load_defaults()<EOL>if not getattr(checker, "<STR_LIT>", True):<EOL><INDENT>self.disable(checker.name)<EOL><DEDENT>
register a new checker

        checker is an object implementing IRawChecker or / and IAstroidChecker