Loading...
Searching...
No Matches
BinaryNinja::CoreLanguageRepresentationFunctionType Class Reference

Public Member Functions

 CoreLanguageRepresentationFunctionType (BNLanguageRepresentationFunctionType *type)
Ref< LanguageRepresentationFunctionCreate (Architecture *arch, Function *owner, HighLevelILFunction *highLevelIL) override
 This method must be overridden.
bool IsValid (BinaryView *view) override
 Returns whether the language is valid for the given binary view.
Ref< TypePrinterGetTypePrinter () override
 Returns the type printer for displaying types in this language.
Ref< TypeParserGetTypeParser () override
 Returns the type parser for parsing types in this language.
Ref< LineFormatterGetLineFormatter () override
 Returns the line formatter for formatting code in this language.
std::vector< DisassemblyTextLineGetFunctionTypeTokens (Function *func, DisassemblySettings *settings=nullptr) override
 Returns a list of lines representing a function prototype in this language.
Public Member Functions inherited from BinaryNinja::LanguageRepresentationFunctionType
 LanguageRepresentationFunctionType (const std::string &name)
 LanguageRepresentationFunctionType (BNLanguageRepresentationFunctionType *type)
std::string GetName () const
Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNLanguageRepresentationFunctionType >
 StaticCoreRefCountObject ()
virtual ~StaticCoreRefCountObject ()
BNLanguageRepresentationFunctionTypeGetObject () const
void AddRef ()
void Release ()
void AddRefForRegistration ()
void AddRefForCallback ()
void ReleaseForCallback ()

Additional Inherited Members

Static Public Member Functions inherited from BinaryNinja::LanguageRepresentationFunctionType
static void Register (LanguageRepresentationFunctionType *type)
 Registers the language representation function type.
static Ref< LanguageRepresentationFunctionTypeGetByName (const std::string &name)
static bool IsValidByName (const std::string &name, BinaryView *view)
static std::vector< Ref< LanguageRepresentationFunctionType > > GetTypes ()
Public Attributes inherited from BinaryNinja::StaticCoreRefCountObject< BNLanguageRepresentationFunctionType >
std::atomic< int > m_refs
BNLanguageRepresentationFunctionTypem_object

Constructor & Destructor Documentation

◆ CoreLanguageRepresentationFunctionType()

CoreLanguageRepresentationFunctionType::CoreLanguageRepresentationFunctionType ( BNLanguageRepresentationFunctionType * type)

Member Function Documentation

◆ Create()

Ref< LanguageRepresentationFunction > CoreLanguageRepresentationFunctionType::Create ( Architecture * arch,
Function * owner,
HighLevelILFunction * highLevelIL )
overridevirtual

This method must be overridden.

This creates the LanguageRepresentationFunction object for the given architecture, owner function, and High Level IL function.

Parameters
archThe architecture of the function.
ownerThe associated function.
highLevelILThe High Level IL for the function.
Returns
A LanguageRepresentationFunction instance for the given function.

Implements BinaryNinja::LanguageRepresentationFunctionType.

◆ IsValid()

bool CoreLanguageRepresentationFunctionType::IsValid ( BinaryView * view)
overridevirtual

Returns whether the language is valid for the given binary view.

Parameters
viewThe binary view to check the validity for.
Returns
True if the language is valid for the given binary view, false otherwise.

Reimplemented from BinaryNinja::LanguageRepresentationFunctionType.

◆ GetTypePrinter()

Ref< TypePrinter > CoreLanguageRepresentationFunctionType::GetTypePrinter ( )
overridevirtual

Returns the type printer for displaying types in this language.

If NULL is returned, the default type printer will be used.

Returns
The optional type printer for displaying types in this language.

Reimplemented from BinaryNinja::LanguageRepresentationFunctionType.

◆ GetTypeParser()

Ref< TypeParser > CoreLanguageRepresentationFunctionType::GetTypeParser ( )
overridevirtual

Returns the type parser for parsing types in this language.

If NULL is returned, the default type parser will be used.

Returns
The optional type parser for parsing types in this language.

Reimplemented from BinaryNinja::LanguageRepresentationFunctionType.

◆ GetLineFormatter()

Ref< LineFormatter > CoreLanguageRepresentationFunctionType::GetLineFormatter ( )
overridevirtual

Returns the line formatter for formatting code in this language.

If NULL is returned, the default formatter will be used.

Returns
The optional formatter for formatting code in this language.

Reimplemented from BinaryNinja::LanguageRepresentationFunctionType.

◆ GetFunctionTypeTokens()

vector< DisassemblyTextLine > CoreLanguageRepresentationFunctionType::GetFunctionTypeTokens ( Function * func,
DisassemblySettings * settings = nullptr )
overridevirtual

Returns a list of lines representing a function prototype in this language.

If no lines are returned, the default C-style prototype will be used.

Parameters
funcThe function to get the prototype lines for.
settingsThe disassembly settings to use (may be NULL).
Returns
An optional vector of lines representing the function prototype.

Reimplemented from BinaryNinja::LanguageRepresentationFunctionType.