'Called by register() functions in language support modules.'

def set_lang_info(self, lang, silvercity_lexer=None, buf_class=None, import_handler_class=None, cile_driver_class=None, is_cpln_lang=False, langintel_class=None, import_everything=False):

    if silvercity_lexer:
        self.silvercity_lexer_from_lang[lang] = silvercity_lexer
    if buf_class:
        self.buf_class_from_lang[lang] = buf_class
    if langintel_class:
        self.langintel_class_from_lang[lang] = langintel_class
    if import_handler_class:
        self.import_handler_class_from_lang[lang] = import_handler_class
    if (cile_driver_class is not None):
        self._is_citadel_from_lang[lang] = True
        self.citadel.set_lang_info(lang, cile_driver_class, is_cpln_lang=is_cpln_lang)
    if is_cpln_lang:
        self._is_cpln_from_lang[lang] = True
    if import_everything:
        self.db.import_everything_langs.add(lang)
