BinaryNinja::StructureBuilder Class Reference

Public Member Functions

 StructureBuilder ()
 
 StructureBuilder (BNStructureBuilder *s)
 
 StructureBuilder (BNStructureVariant type, bool packed=false)
 
 StructureBuilder (const StructureBuilder &s)
 
 StructureBuilder (StructureBuilder &&s)
 
 StructureBuilder (Structure *s)
 
 ~StructureBuilder ()
 
StructureBuilderoperator= (const StructureBuilder &s)
 
StructureBuilderoperator= (StructureBuilder &&s)
 
StructureBuilderoperator= (Structure *s)
 
BNStructureBuilder * GetObject ()
 
Ref< StructureFinalize () const
 
std::vector< StructureMemberGetMembers () const
 
bool GetMemberByName (const std::string &name, StructureMember &result) const
 
bool GetMemberAtOffset (int64_t offset, StructureMember &result) const
 
bool GetMemberAtOffset (int64_t offset, StructureMember &result, size_t &idx) const
 
uint64_t GetWidth () const
 
StructureBuilderSetWidth (size_t width)
 
size_t GetAlignment () const
 
StructureBuilderSetAlignment (size_t align)
 
bool IsPacked () const
 
StructureBuilderSetPacked (bool packed)
 
bool IsUnion () const
 
StructureBuilderSetStructureType (BNStructureVariant type)
 
BNStructureVariant GetStructureType () const
 
StructureBuilderAddMember (const Confidence< Ref< Type > > &type, const std::string &name, BNMemberAccess access=NoAccess, BNMemberScope scope=NoScope)
 
StructureBuilderAddMemberAtOffset (const Confidence< Ref< Type > > &type, const std::string &name, uint64_t offset, bool overwriteExisting=true, BNMemberAccess access=NoAccess, BNMemberScope scope=NoScope)
 
StructureBuilderRemoveMember (size_t idx)
 
StructureBuilderReplaceMember (size_t idx, const Confidence< Ref< Type > > &type, const std::string &name, bool overwriteExisting=true)
 

Constructor & Destructor Documentation

◆ StructureBuilder() [1/6]

StructureBuilder::StructureBuilder ( )

◆ StructureBuilder() [2/6]

StructureBuilder::StructureBuilder ( BNStructureBuilder *  s)

◆ StructureBuilder() [3/6]

StructureBuilder::StructureBuilder ( BNStructureVariant  type,
bool  packed = false 
)

◆ StructureBuilder() [4/6]

StructureBuilder::StructureBuilder ( const StructureBuilder s)

◆ StructureBuilder() [5/6]

StructureBuilder::StructureBuilder ( StructureBuilder &&  s)

◆ StructureBuilder() [6/6]

StructureBuilder::StructureBuilder ( Structure s)

◆ ~StructureBuilder()

StructureBuilder::~StructureBuilder ( )

Member Function Documentation

◆ AddMember()

StructureBuilder & StructureBuilder::AddMember ( const Confidence< Ref< Type > > &  type,
const std::string &  name,
BNMemberAccess  access = NoAccess,
BNMemberScope  scope = NoScope 
)

◆ AddMemberAtOffset()

StructureBuilder & StructureBuilder::AddMemberAtOffset ( const Confidence< Ref< Type > > &  type,
const std::string &  name,
uint64_t  offset,
bool  overwriteExisting = true,
BNMemberAccess  access = NoAccess,
BNMemberScope  scope = NoScope 
)

◆ Finalize()

Ref< Structure > StructureBuilder::Finalize ( ) const

◆ GetAlignment()

size_t StructureBuilder::GetAlignment ( ) const

◆ GetMemberAtOffset() [1/2]

bool StructureBuilder::GetMemberAtOffset ( int64_t  offset,
StructureMember result 
) const

◆ GetMemberAtOffset() [2/2]

bool StructureBuilder::GetMemberAtOffset ( int64_t  offset,
StructureMember result,
size_t &  idx 
) const

◆ GetMemberByName()

bool StructureBuilder::GetMemberByName ( const std::string &  name,
StructureMember result 
) const

◆ GetMembers()

vector< StructureMember > StructureBuilder::GetMembers ( ) const

◆ GetObject()

BNStructureBuilder * BinaryNinja::StructureBuilder::GetObject ( )
inline

◆ GetStructureType()

BNStructureVariant StructureBuilder::GetStructureType ( ) const

◆ GetWidth()

uint64_t StructureBuilder::GetWidth ( ) const

◆ IsPacked()

bool StructureBuilder::IsPacked ( ) const

◆ IsUnion()

bool StructureBuilder::IsUnion ( ) const

◆ operator=() [1/3]

StructureBuilder & StructureBuilder::operator= ( const StructureBuilder s)

◆ operator=() [2/3]

StructureBuilder & StructureBuilder::operator= ( Structure s)

◆ operator=() [3/3]

StructureBuilder & StructureBuilder::operator= ( StructureBuilder &&  s)

◆ RemoveMember()

StructureBuilder & StructureBuilder::RemoveMember ( size_t  idx)

◆ ReplaceMember()

StructureBuilder & StructureBuilder::ReplaceMember ( size_t  idx,
const Confidence< Ref< Type > > &  type,
const std::string &  name,
bool  overwriteExisting = true 
)

◆ SetAlignment()

StructureBuilder & StructureBuilder::SetAlignment ( size_t  align)

◆ SetPacked()

StructureBuilder & StructureBuilder::SetPacked ( bool  packed)

◆ SetStructureType()

StructureBuilder & StructureBuilder::SetStructureType ( BNStructureVariant  type)

◆ SetWidth()

StructureBuilder & StructureBuilder::SetWidth ( size_t  width)

The documentation for this class was generated from the following files: