ROSE  0.10.0.0
Public Member Functions | Friends | List of all members
Rose::BinaryAnalysis::Variables::GlobalVariable Class Reference

Description

Description of a global variable.

Definition at line 235 of file BinaryVariables.h.

#include <BinaryVariables.h>

Inheritance diagram for Rose::BinaryAnalysis::Variables::GlobalVariable:
Inheritance graph
[legend]
Collaboration diagram for Rose::BinaryAnalysis::Variables::GlobalVariable:
Collaboration graph
[legend]

Public Member Functions

 GlobalVariable ()
 Default constructor. More...
 
 GlobalVariable (rose_addr_t startingAddress, rose_addr_t maxSizeBytes, const AddressSet &definingInstructionVas=AddressSet(), const std::string &name="")
 Constructor. More...
 
const std::string & setDefaultName ()
 Give variable a defult name. More...
 
AddressInterval interval () const
 Location of variable in memory. More...
 
rose_addr_t address () const
 Property: Starting address. More...
 
void address (rose_addr_t va)
 Property: Starting address. More...
 
bool operator== (const GlobalVariable &other) const
 Compare two global variable descriptors. More...
 
bool operator!= (const GlobalVariable &other) const
 Compare two global variable descriptors. More...
 
void print (std::ostream &) const
 Printing global variable.
 
std::string toString () const
 Printing global variable.
 
- Public Member Functions inherited from Rose::BinaryAnalysis::Variables::BaseVariable
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...
 

Friends

std::ostream & operator<< (std::ostream &, const Rose::BinaryAnalysis::Variables::GlobalVariable &)
 Print global variable descriptor. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Rose::BinaryAnalysis::Variables::BaseVariable
 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::GlobalVariable::GlobalVariable ( )

Default constructor.

Constructs a descriptor for an invalid global variable whose maximum size is zero.

Rose::BinaryAnalysis::Variables::GlobalVariable::GlobalVariable ( rose_addr_t  startingAddress,
rose_addr_t  maxSizeBytes,
const AddressSet definingInstructionVas = AddressSet(),
const std::string &  name = "" 
)

Constructor.

Creates a global variable descriptor for a variable whose lowest address is startingAddress and whose maximum size is maxSizeBytes bytes. The optional definingInstructionVas are the addresses of the instructions from which this variable was discerned and are usually memory dereferencing instructions.

Member Function Documentation

rose_addr_t Rose::BinaryAnalysis::Variables::GlobalVariable::address ( ) const
inline

Property: Starting address.

This property is the lowest address for the variable.

Definition at line 268 of file BinaryVariables.h.

void Rose::BinaryAnalysis::Variables::GlobalVariable::address ( rose_addr_t  va)
inline

Property: Starting address.

This property is the lowest address for the variable.

Definition at line 269 of file BinaryVariables.h.

const std::string& Rose::BinaryAnalysis::Variables::GlobalVariable::setDefaultName ( )

Give variable a defult name.

This variable's name is replaced by a generated name and the name is returned.

bool Rose::BinaryAnalysis::Variables::GlobalVariable::operator== ( const GlobalVariable other) const

Compare two global variable descriptors.

Two global variable descriptors are equal if and only if they have the same starting address and maximum size.

bool Rose::BinaryAnalysis::Variables::GlobalVariable::operator!= ( const GlobalVariable other) const

Compare two global variable descriptors.

Two global variable descriptors are equal if and only if they have the same starting address and maximum size.

AddressInterval Rose::BinaryAnalysis::Variables::GlobalVariable::interval ( ) const

Location of variable in memory.

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  ,
const Rose::BinaryAnalysis::Variables::GlobalVariable  
)
friend

Print global variable descriptor.


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