Package ghidra.program.util
Class DefaultLanguageService
java.lang.Object
ghidra.program.util.DefaultLanguageService
- All Implemented Interfaces:
LanguageService
Default Language service used gather up all the languages that were found
during the class search (search was for language providers)
-
Method Summary
Modifier and TypeMethodDescriptiongetDefaultLanguage
(Processor processor) Returns the default Language to use for the given processor;getDefinedExternalToolNames
(String languageId, String tool, boolean includeDeprecated) Returns external names for specified language associated with other tools.getExternalLanguageDescriptions
(String externalProcessorName, String externalTool, Endian endianness, Integer size) getLanguage
(LanguageID languageID) Returns the language with the given language IDReturns all known language/compiler spec pairs which satisfy the criteria identify by the non-null parameters.Returns all known language/compiler spec pairs which satisfy the criteria identify by the non-null parameters.getLanguageDescription
(LanguageID languageID) Get language information for the given language ID.getLanguageDescriptions
(boolean includeDeprecatedLanguages) Returns all known language DescriptionsgetLanguageDescriptions
(Processor processor) Returns all language Descriptions associated with the given processor.getLanguageDescriptions
(Processor processor, Endian endianness, Integer size, String variant) Returns all known language descriptions which satisfy the criteria identify by the non-null parameters.static LanguageService
Returns the single instance of the DefaultLanguageService.
-
Method Details
-
getLanguageService
Returns the single instance of the DefaultLanguageService.- Returns:
- the language service
-
getLanguage
Description copied from interface:LanguageService
Returns the language with the given language ID- Specified by:
getLanguage
in interfaceLanguageService
- Parameters:
languageID
- the ID of language to retrieve- Returns:
- the
Language
matching the given ID - Throws:
LanguageNotFoundException
- if no language can be found for the given ID
-
getLanguageDescription
public LanguageDescription getLanguageDescription(LanguageID languageID) throws LanguageNotFoundException Description copied from interface:LanguageService
Get language information for the given language ID.- Specified by:
getLanguageDescription
in interfaceLanguageService
- Parameters:
languageID
- the id for the language.- Returns:
- language information for the given language ID.
- Throws:
LanguageNotFoundException
- if there is no language for the given ID.
-
getLanguageDescriptions
Description copied from interface:LanguageService
Returns all known language Descriptions- Specified by:
getLanguageDescriptions
in interfaceLanguageService
- Parameters:
includeDeprecatedLanguages
- TODO- Returns:
- all know language Descriptions.
-
getLanguageDescriptions
public List<LanguageDescription> getLanguageDescriptions(Processor processor, Endian endianness, Integer size, String variant) Description copied from interface:LanguageService
Returns all known language descriptions which satisfy the criteria identify by the non-null parameters. A null value implies a don't-care wildcard value.- Specified by:
getLanguageDescriptions
in interfaceLanguageService
- Parameters:
processor
- the processor for which to get a languageendianness
- big or littlesize
- processor address space size (in bits)variant
- the processor version (usually 'default')- Returns:
- the language descriptions that fit the parameters
-
getExternalLanguageDescriptions
-
getLanguageCompilerSpecPairs
Description copied from interface:LanguageService
Returns all known language/compiler spec pairs which satisfy the criteria identify by the non-null parameters. A null value implies a don't-care wildcard value. OMITS DEPRECATED LANGUAGES.- Specified by:
getLanguageCompilerSpecPairs
in interfaceLanguageService
- Parameters:
query
- TODO- Returns:
-
getLanguageCompilerSpecPairs
public List<LanguageCompilerSpecPair> getLanguageCompilerSpecPairs(ExternalLanguageCompilerSpecQuery query) Description copied from interface:LanguageService
Returns all known language/compiler spec pairs which satisfy the criteria identify by the non-null parameters. A null value implies a don't-care wildcard value. OMITS DEPRECATED LANGUAGES. This uses an ExternalLanguageCompilerSpecQuery rather than a LanguageCompilerSpecQuery.- Specified by:
getLanguageCompilerSpecPairs
in interfaceLanguageService
- Parameters:
query
-- Returns:
-
getLanguageDescriptions
Description copied from interface:LanguageService
Returns all language Descriptions associated with the given processor.- Specified by:
getLanguageDescriptions
in interfaceLanguageService
- Parameters:
processor
- the processor for which to retrieve all know language descriptions.
-
getDefinedExternalToolNames
public static List<String> getDefinedExternalToolNames(String languageId, String tool, boolean includeDeprecated) Returns external names for specified language associated with other tools. For example, x86 languages are usually referred to as "metapc" by IDA-PRO.- Parameters:
languageId
- language to search againsttool
- name of external tool to search againstincludeDeprecated
- include deprecated LanguageDescriptions- Returns:
- external names for this language associated with tool
-
getDefaultLanguage
Description copied from interface:LanguageService
Returns the default Language to use for the given processor;- Specified by:
getDefaultLanguage
in interfaceLanguageService
- Parameters:
processor
- the processor for which to get a language.- Throws:
LanguageNotFoundException
- if there is no languages at all for the given processor.
-