Package ghidra.program.model.lang

# Interface LanguageProvider

All Superinterfaces:
  `ExtensionPoint`

All Known Implementing Classes:
  `SleighLanguageProvider`

public interface LanguageProvider extends ExtensionPoint
NOTE: ALL LanguageProvider CLASSES MUST END IN "LanguageProvider". If not, the ClassSearcher will not find them. Service for providing languages.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Language`
  `getLanguage(LanguageID languageId)`
  Returns the language with the given name or null if no language has that name
  `LanguageDescription[]`
  `getLanguageDescriptions()`
  Returns a list of language descriptions provided by this provider
  `boolean`
  `hadLoadFailure()`
  `boolean`
  `isLanguageLoaded(LanguageID languageId)`
  Returns true if the given language has been successfully loaded

- ## Method Details

  - ### getLanguage

    Language getLanguage(LanguageID languageId)
    Returns the language with the given name or null if no language has that name
    Parameters:
      `languageId` - the name of the language to be retrieved
    Returns:
      the `Language` with the given name or null if not found
    Throws:
      `RuntimeException` - if language instantiation error occurs

  - ### getLanguageDescriptions

    LanguageDescription[] getLanguageDescriptions()
    Returns a list of language descriptions provided by this provider

  - ### hadLoadFailure

    boolean hadLoadFailure()
    Returns:
      true if one of more languages or language description failed to load properly.

  - ### isLanguageLoaded

    boolean isLanguageLoaded(LanguageID languageId)
    Returns true if the given language has been successfully loaded
    Parameters:
      `languageId` - the name of the language to be retrieved
    Returns:
      true if the given language has been successfully loaded