registerLanguage method

void registerLanguage(
  1. String name,
  2. LanguageDefinitionFn definition
)

Implementation

void registerLanguage(String name, LanguageDefinitionFn definition) {
  Mode lang;
  try {
    lang = definition(this);
  } catch (error) {
    if (!_safeMode) rethrow;
    lang = Mode(
      disableAutodetect: true,
      name: 'Plain text',
      contains: <dynamic>[],
    );
  }
  lang.name ??= name;
  _languages[name] = lang;
  lang.rawDefinition = definition;

  final aliases = lang.aliases;
  if (aliases != null) {
    registerAliases(aliases, languageName: name);
  }
}