ROSE  0.11.51.0
Protected Member Functions | List of all members
Rose::BinaryAnalysis::Variables::BaseVariable Class Reference

Description

Describes a local or global variable.

Definition at line 66 of file Variables.h.

#include <Variables.h>

Inheritance diagram for Rose::BinaryAnalysis::Variables::BaseVariable:
Inheritance graph
[legend]

Public Member Functions

rose_addr_t maxSizeBytes () const
 Property: Maximum variable size in bytes. More...
 
void maxSizeBytes (rose_addr_t size)
 Property: Maximum variable size in bytes. More...
 
const AddressSetdefiningInstructionVas () const
 Property: Addresses of instructions related to this variable. More...
 
AddressSetdefiningInstructionVas ()
 Property: Addresses of instructions related to this variable. More...
 
void definingInstructionVas (const AddressSet &vas)
 Property: Addresses of instructions related to this variable. More...
 
const InstructionSemantics2::BaseSemantics::InputOutputPropertySetioProperties () const
 Property: I/O properties. More...
 
InstructionSemantics2::BaseSemantics::InputOutputPropertySetioProperties ()
 Property: I/O properties. More...
 
void ioProperties (const InstructionSemantics2::BaseSemantics::InputOutputPropertySet &set)
 Property: I/O properties. More...
 
const std::string & name () const
 Property: Optional variable name. More...
 
void name (const std::string &s)
 Property: Optional variable name. More...
 

Protected Member Functions

 BaseVariable ()
 Default constructor. More...
 
 BaseVariable (size_t maxSizeBytes, const AddressSet &definingInstructionVas, const std::string &name)
 Construct a variable with a given maximum size. More...
 

Constructor & Destructor Documentation

Rose::BinaryAnalysis::Variables::BaseVariable::BaseVariable ( )
inlineprotected

Default constructor.

Constructs a descriptor for a variable whose maximum size is zero.

Definition at line 89 of file Variables.h.

Rose::BinaryAnalysis::Variables::BaseVariable::BaseVariable ( size_t  maxSizeBytes,
const AddressSet definingInstructionVas,
const std::string &  name 
)
inlineprotected

Construct a variable with a given maximum size.

Definition at line 93 of file Variables.h.

Member Function Documentation

rose_addr_t Rose::BinaryAnalysis::Variables::BaseVariable::maxSizeBytes ( ) const
inline

Property: Maximum variable size in bytes.

This is the maximum size that the variable could be, measured in bytes. A default constructed object will have a size of zero.

Definition at line 106 of file Variables.h.

void Rose::BinaryAnalysis::Variables::BaseVariable::maxSizeBytes ( rose_addr_t  size)

Property: Maximum variable size in bytes.

This is the maximum size that the variable could be, measured in bytes. A default constructed object will have a size of zero.

const AddressSet& Rose::BinaryAnalysis::Variables::BaseVariable::definingInstructionVas ( ) const
inline

Property: Addresses of instructions related to this variable.

This is the set of addresses for the instructions from which this variable was detected. This is typically instructions that read or write to memory using an offset from the function's frame.

Definition at line 116 of file Variables.h.

AddressSet& Rose::BinaryAnalysis::Variables::BaseVariable::definingInstructionVas ( )
inline

Property: Addresses of instructions related to this variable.

This is the set of addresses for the instructions from which this variable was detected. This is typically instructions that read or write to memory using an offset from the function's frame.

Definition at line 117 of file Variables.h.

void Rose::BinaryAnalysis::Variables::BaseVariable::definingInstructionVas ( const AddressSet vas)
inline

Property: Addresses of instructions related to this variable.

This is the set of addresses for the instructions from which this variable was detected. This is typically instructions that read or write to memory using an offset from the function's frame.

Definition at line 118 of file Variables.h.

const InstructionSemantics2::BaseSemantics::InputOutputPropertySet& Rose::BinaryAnalysis::Variables::BaseVariable::ioProperties ( ) const
inline

Property: I/O properties.

This property is a set of flags that describe how the variable is accessed.

Definition at line 126 of file Variables.h.

InstructionSemantics2::BaseSemantics::InputOutputPropertySet& Rose::BinaryAnalysis::Variables::BaseVariable::ioProperties ( )
inline

Property: I/O properties.

This property is a set of flags that describe how the variable is accessed.

Definition at line 127 of file Variables.h.

void Rose::BinaryAnalysis::Variables::BaseVariable::ioProperties ( const InstructionSemantics2::BaseSemantics::InputOutputPropertySet set)
inline

Property: I/O properties.

This property is a set of flags that describe how the variable is accessed.

Definition at line 128 of file Variables.h.

const std::string& Rose::BinaryAnalysis::Variables::BaseVariable::name ( ) const
inline

Property: Optional variable name.

There is no constraint on what the variable name may be. At this time it's used mainly for debugging. Therefore it should always be printed assuming it contains special characters.

Definition at line 137 of file Variables.h.

void Rose::BinaryAnalysis::Variables::BaseVariable::name ( const std::string &  s)
inline

Property: Optional variable name.

There is no constraint on what the variable name may be. At this time it's used mainly for debugging. Therefore it should always be printed assuming it contains special characters.

Definition at line 138 of file Variables.h.


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