A single line in the stack view.
Public Types | |
enum class | Type { Variable , Member , OffsetRef , Annotation , Fill } |
Public Member Functions | |
StackViewLine::Type | type () const |
Get this line's type. More... | |
int64_t | offset () const |
Get the stack frame offset for this line. More... | |
size_t | width () const |
Get the number of bytes this line represents on the stack. More... | |
size_t | level () const |
Get the hierarchical level of this line. More... | |
void | setLevel (size_t level) |
Set the hierarchical level for this line. More... | |
TypeRef | dataType () const |
Get the type of the data this line represents. More... | |
void | setDataType (TypeRef vnat) |
Set the type of the data this line represents. Does not affect the underlying variable. More... | |
BinaryNinja::Variable | variable () const |
Get the variable represented by this line. More... | |
void | setVariable (const BinaryNinja::Variable &var) |
Set the variable represented by this line. More... | |
void | setWidthOverride (size_t width) |
Set a width override for this line. More... | |
bool | isDataBacked () const |
Is this line backed by data or is it ephermeral? More... | |
bool | isReferenced () const |
Is the data represented by this line referenced in the current function? More... | |
void | setIsReferenced (bool isReferenced) |
Set whether the data represented by this line is referenced in the current function. More... | |
bool | isUnused () const |
Is the data represented by this line unused in the current function? More... | |
void | setIsUnused (bool isUnused) |
Set whether the data represented by this line unused in the current function. More... | |
BinaryNinja::DisassemblyTextLine | content () const |
Get the content (with no offset) for this line. More... | |
BinaryNinja::DisassemblyTextLine | contentWithOffset (bool hide=false) const |
Get the content with the leading offset (or padding) for this line. More... | |
size_t | contentWidth (bool withOffset=true) const |
Get the width of the total line content in characters. More... | |
void | appendToken (const BinaryNinja::InstructionTextToken &token) |
Append a single token to this line's content. More... | |
void | appendTokens (const std::vector< BinaryNinja::InstructionTextToken > &tokens) |
Append multiple tokens to this line's content. More... | |
void | indent (size_t levels=1) |
Indent this line's content. More... | |
Static Public Member Functions | |
static StackViewLine | variable (int64_t offset, const BinaryNinja::VariableNameAndType &vnat, PlatformRef plat) |
Create a new line for a variable. More... | |
static StackViewLine | member (int64_t offset, const BinaryNinja::VariableNameAndType &vnat, PlatformRef plat) |
Create a new line for a struct or array member. More... | |
static StackViewLine | offsetRef (int64_t base, uint64_t offset, size_t size) |
Create a new line for a struct offset reference. More... | |
static StackViewLine | annotation (int64_t offset, const std::string &text) |
Create a new annotation line. More... | |
static StackViewLine | fill (int64_t offset, size_t length) |
Create a new fill line. More... | |
|
strong |
|
static |
Create a new annotation line.
void StackViewLine::appendToken | ( | const BinaryNinja::InstructionTextToken & | token | ) |
Append a single token to this line's content.
void StackViewLine::appendTokens | ( | const std::vector< BinaryNinja::InstructionTextToken > & | tokens | ) |
Append multiple tokens to this line's content.
BinaryNinja::DisassemblyTextLine StackViewLine::content | ( | ) | const |
Get the content (with no offset) for this line.
size_t StackViewLine::contentWidth | ( | bool | withOffset = true | ) | const |
Get the width of the total line content in characters.
BinaryNinja::DisassemblyTextLine StackViewLine::contentWithOffset | ( | bool | hide = false | ) | const |
Get the content with the leading offset (or padding) for this line.
TypeRef StackViewLine::dataType | ( | ) | const |
Get the type of the data this line represents.
|
static |
Create a new fill line.
void StackViewLine::indent | ( | size_t | levels = 1 | ) |
Indent this line's content.
bool StackViewLine::isDataBacked | ( | ) | const |
Is this line backed by data or is it ephermeral?
bool StackViewLine::isReferenced | ( | ) | const |
Is the data represented by this line referenced in the current function?
bool StackViewLine::isUnused | ( | ) | const |
Is the data represented by this line unused in the current function?
size_t StackViewLine::level | ( | ) | const |
Get the hierarchical level of this line.
|
static |
Create a new line for a struct or array member.
int64_t StackViewLine::offset | ( | ) | const |
Get the stack frame offset for this line.
|
static |
Create a new line for a struct offset reference.
void StackViewLine::setDataType | ( | TypeRef | vnat | ) |
Set the type of the data this line represents. Does not affect the underlying variable.
void StackViewLine::setIsReferenced | ( | bool | isReferenced | ) |
Set whether the data represented by this line is referenced in the current function.
void StackViewLine::setIsUnused | ( | bool | isUnused | ) |
Set whether the data represented by this line unused in the current function.
void StackViewLine::setLevel | ( | size_t | level | ) |
Set the hierarchical level for this line.
void StackViewLine::setVariable | ( | const BinaryNinja::Variable & | var | ) |
Set the variable represented by this line.
void StackViewLine::setWidthOverride | ( | size_t | width | ) |
Set a width override for this line.
StackViewLine::Type StackViewLine::type | ( | ) | const |
Get this line's type.
BinaryNinja::Variable StackViewLine::variable | ( | ) | const |
Get the variable represented by this line.
|
static |
Create a new line for a variable.
size_t StackViewLine::width | ( | ) | const |
Get the number of bytes this line represents on the stack.