Binary Ninja API C++: DebugInfo
◆ BinaryNinja::DebugFunctionInfo
struct BinaryNinja::DebugFunctionInfo
Public Member Functions | |
| DebugFunctionInfo (std::string shortName, std::string fullName, std::string rawName, uint64_t address, Ref< Type > type, Ref< Platform > platform, const std::vector< std::string > &components, const std::vector< VariableNameAndType > &localVariables) | |
Public Attributes | |
| std::string | shortName |
| std::string | fullName |
| std::string | rawName |
| uint64_t | address |
| Ref< Type > | type |
| Ref< Platform > | platform |
| std::vector< std::string > | components |
| std::vector< VariableNameAndType > | localVariables |
◆ DebugFunctionInfo()
|
inline |
◆ shortName
std::string BinaryNinja::DebugFunctionInfo::shortName
◆ fullName
std::string BinaryNinja::DebugFunctionInfo::fullName
◆ rawName
std::string BinaryNinja::DebugFunctionInfo::rawName
◆ address
uint64_t BinaryNinja::DebugFunctionInfo::address
◆ type
◆ platform
◆ components
std::vector<std::string> BinaryNinja::DebugFunctionInfo::components
◆ localVariables
◆ BinaryNinja::DebugInfo
class BinaryNinja::DebugInfo
Public Member Functions | |
| DebugInfo (BNDebugInfo *debugInfo) | |
| std::vector< std::string > | GetParsers () const |
| TypeContainer | GetTypeContainer (const std::string &parserName) |
| Type Container for all types in the DebugInfo that resulted from the parse of the given parser. | |
| std::vector< NameAndType > | GetTypes (const std::string &parserName="") const |
| std::vector< DebugFunctionInfo > | GetFunctions (const std::string &parserName="") const |
| std::vector< DataVariableAndName > | GetDataVariables (const std::string &parserName="") const |
| Ref< Type > | GetTypeByName (const std::string &parserName, const std::string &name) const |
| std::optional< std::tuple< uint64_t, Ref< Type > > > | GetDataVariableByName (const std::string &parserName, const std::string &name) const |
| std::optional< std::tuple< std::string, Ref< Type > > > | GetDataVariableByAddress (const std::string &parserName, const uint64_t address) const |
| std::vector< std::tuple< std::string, Ref< Type > > > | GetTypesByName (const std::string &name) const |
| std::vector< std::tuple< std::string, uint64_t, Ref< Type > > > | GetDataVariablesByName (const std::string &name) const |
| std::vector< std::tuple< std::string, std::string, Ref< Type > > > | GetDataVariablesByAddress (const uint64_t address) const |
| bool | RemoveParserInfo (const std::string &parserName) |
| bool | RemoveParserTypes (const std::string &parserName) |
| bool | RemoveParserFunctions (const std::string &parserName) |
| bool | RemoveParserDataVariables (const std::string &parserName) |
| bool | RemoveTypeByName (const std::string &parserName, const std::string &name) |
| bool | RemoveFunctionByIndex (const std::string &parserName, const size_t index) |
| bool | RemoveDataVariableByAddress (const std::string &parserName, const uint64_t address) |
| bool | AddType (const std::string &name, Ref< Type > type, const std::vector< std::string > &components={}) |
| bool | AddFunction (const DebugFunctionInfo &function) |
| bool | AddDataVariable (uint64_t address, Ref< Type > type, const std::string &name="", const std::vector< std::string > &components={}) |
| Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNDebugInfo, BNNewDebugInfoReference, BNFreeDebugInfoReference > | |
| CoreRefCountObject () | |
| virtual | ~CoreRefCountObject () |
| BNDebugInfo * | GetObject () const |
| void | AddRef () |
| void | Release () |
| void | AddRefForRegistration () |
| void | ReleaseForRegistration () |
| void | AddRefForCallback () |
| void | ReleaseForCallback () |
◆ GetParsers()
| vector< string > DebugInfo::GetParsers | ( | ) | const |
◆ GetTypeContainer()
| TypeContainer DebugInfo::GetTypeContainer | ( | const std::string & | parserName | ) |
◆ GetTypes()
| vector< NameAndType > DebugInfo::GetTypes | ( | const std::string & | parserName = "" | ) | const |
◆ GetFunctions()
| vector< DebugFunctionInfo > DebugInfo::GetFunctions | ( | const std::string & | parserName = "" | ) | const |
◆ GetDataVariables()
| vector< DataVariableAndName > DebugInfo::GetDataVariables | ( | const std::string & | parserName = "" | ) | const |
◆ GetTypeByName()
| Ref< Type > DebugInfo::GetTypeByName | ( | const std::string & | parserName, |
| const std::string & | name ) const |
◆ GetDataVariableByName()
| optional< tuple< uint64_t, Ref< Type > > > DebugInfo::GetDataVariableByName | ( | const std::string & | parserName, |
| const std::string & | name ) const |
◆ GetDataVariableByAddress()
| optional< tuple< string, Ref< Type > > > DebugInfo::GetDataVariableByAddress | ( | const std::string & | parserName, |
| const uint64_t | address ) const |
◆ GetTypesByName()
◆ GetDataVariablesByName()
| vector< tuple< string, uint64_t, Ref< Type > > > DebugInfo::GetDataVariablesByName | ( | const std::string & | name | ) | const |
◆ GetDataVariablesByAddress()
| vector< tuple< string, string, Ref< Type > > > DebugInfo::GetDataVariablesByAddress | ( | const uint64_t | address | ) | const |
◆ RemoveParserInfo()
| bool DebugInfo::RemoveParserInfo | ( | const std::string & | parserName | ) |
◆ RemoveParserTypes()
| bool DebugInfo::RemoveParserTypes | ( | const std::string & | parserName | ) |
◆ RemoveParserFunctions()
| bool DebugInfo::RemoveParserFunctions | ( | const std::string & | parserName | ) |
◆ RemoveParserDataVariables()
| bool DebugInfo::RemoveParserDataVariables | ( | const std::string & | parserName | ) |
◆ RemoveTypeByName()
| bool DebugInfo::RemoveTypeByName | ( | const std::string & | parserName, |
| const std::string & | name ) |
◆ RemoveFunctionByIndex()
| bool DebugInfo::RemoveFunctionByIndex | ( | const std::string & | parserName, |
| const size_t | index ) |
◆ RemoveDataVariableByAddress()
| bool DebugInfo::RemoveDataVariableByAddress | ( | const std::string & | parserName, |
| const uint64_t | address ) |
◆ AddType()
| bool DebugInfo::AddType | ( | const std::string & | name, |
| Ref< Type > | type, | ||
| const std::vector< std::string > & | components = {} ) |
◆ AddFunction()
| bool DebugInfo::AddFunction | ( | const DebugFunctionInfo & | function | ) |
◆ AddDataVariable()
◆ BinaryNinja::DebugInfoParser
class BinaryNinja::DebugInfoParser
◆ BinaryNinja::CustomDebugInfoParser
class BinaryNinja::CustomDebugInfoParser
Public Member Functions | |
| CustomDebugInfoParser (const std::string &name) | |
| virtual | ~CustomDebugInfoParser () |
| virtual bool | IsValid (Ref< BinaryView >)=0 |
| virtual bool | ParseInfo (Ref< DebugInfo >, Ref< BinaryView >, Ref< BinaryView >, ProgressFunction)=0 |
| Public Member Functions inherited from BinaryNinja::DebugInfoParser | |
| DebugInfoParser (BNDebugInfoParser *parser) | |
| std::string | GetName () const |
| Ref< DebugInfo > | Parse (Ref< BinaryView > view, Ref< BinaryView > debugView, Ref< DebugInfo > existingDebugInfo=nullptr, ProgressFunction progress={}) const |
| bool | IsValidForView (const Ref< BinaryView > view) const |
| Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNDebugInfoParser, BNNewDebugInfoParserReference, BNFreeDebugInfoParserReference > | |
| CoreRefCountObject () | |
| virtual | ~CoreRefCountObject () |
| BNDebugInfoParser * | GetObject () const |
| void | AddRef () |
| void | Release () |
| void | AddRefForRegistration () |
| void | ReleaseForRegistration () |
| void | AddRefForCallback () |
| void | ReleaseForCallback () |
Additional Inherited Members | |
| Static Public Member Functions inherited from BinaryNinja::DebugInfoParser | |
| static Ref< DebugInfoParser > | GetByName (const std::string &name) |
| static std::vector< Ref< DebugInfoParser > > | GetList () |
| static std::vector< Ref< DebugInfoParser > > | GetListForView (const Ref< BinaryView > data) |
| Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNDebugInfoParser, BNNewDebugInfoParserReference, BNFreeDebugInfoParserReference > | |
| std::atomic< int > | m_refs |
| bool | m_registeredRef |
| BNDebugInfoParser * | m_object |
◆ CustomDebugInfoParser()
| CustomDebugInfoParser::CustomDebugInfoParser | ( | const std::string & | name | ) |
◆ ~CustomDebugInfoParser()
|
inlinevirtual |
◆ IsValid()
|
pure virtual |