V-Gears 0
Free Final Fantasy VII engine.
AddressValue Class Reference

Value containing an absolute address. More...

#include <Value.h>

Inheritance diagram for AddressValue:
Collaboration diagram for AddressValue:

Public Member Functions

 AddressValue (const AddressValue &value)=delete
 Copy constructor, disabled. More...
 
AddressValueoperator= (const AddressValue &value)=delete
 Copy constructor, disabled. More...
 
 AddressValue (uint32 addr)
 Constructor for AddressValue. More...
 
bool IsAddress () override
 Return whether or not the Value is an address. More...
 
int32 GetSigned () override
 Always throws {. More...
 
ValuePtr Dup (std::ostream &output) override
 Duplicates the value. More...
 
virtual std::ostream & Print (std::ostream &output) const override
 Print the value to a stream. More...
 
- Public Member Functions inherited from IntValue
 IntValue (const IntValue &value)=delete
 Copy constructor, disabled. More...
 
IntValueoperator= (const IntValue &value)=delete
 Copy constructor, disabled. More...
 
 IntValue (int32 val, bool is_signed)
 Constructor for IntValue. More...
 
 IntValue (uint32 val, bool is_signed)
 Constructor for IntValue. More...
 
bool IsInteger () override
 Return whether or not the Value is an integer. More...
 
bool IsSignedValue () override
 Returns whether or not the stored integer value is signed. More...
 
int32 GetSigned () override
 Retrieves a signed integer representing the value, if possible. More...
 
uint32 GetUnsigned () override
 Retrieves an unsigned integer representing the value, if possible. More...
 
ValuePtr Dup (std::ostream &output) override
 Duplicates the value. More...
 
virtual std::ostream & Print (std::ostream &output) const override
 Print the value to a stream. More...
 
- Public Member Functions inherited from Value
virtual ~Value ()
 Destructor. More...
 
virtual bool IsInteger ()
 Return whether or not the Value is an integer. More...
 
virtual bool IsAddress ()
 Return whether or not the Value is an address. More...
 
virtual bool IsSignedValue ()
 Returns whether or not any stored integer value is signed. More...
 
virtual int32 GetSigned ()
 Retrieves a signed integer representing the value, if possible. More...
 
virtual uint32 GetUnsigned ()
 Retrieves an unsigned integer representing the value, if possible. More...
 
virtual std::ostream & Print (std::ostream &output) const =0
 Print the value to a stream. More...
 
virtual std::string GetString () const
 Retrieves the string representation of the value. More...
 
virtual ValuePtr Dup (std::ostream &output)
 Duplicates a value. More...
 
virtual ValuePtr Negate ()
 Negates a value. More...
 
virtual int GetPrecedence () const
 Operator precedence for this value. More...
 

Additional Inherited Members

- Protected Member Functions inherited from RefCounted
 RefCounted ()
 
virtual ~RefCounted ()
 
- Protected Attributes inherited from IntValue
const int32 val_
 The value of the integer. More...
 
const bool signed_
 True if the value is signed, false if it's not. More...
 

Detailed Description

Value containing an absolute address.

Constructor & Destructor Documentation

◆ AddressValue() [1/2]

AddressValue::AddressValue ( const AddressValue value)
delete

Copy constructor, disabled.

Parameters
[in]valueThe value to copy.

◆ AddressValue() [2/2]

AddressValue::AddressValue ( uint32  addr)
explicit

Constructor for AddressValue.

Parameters
[in]addrThe absolute address represented by the value.

Member Function Documentation

◆ Dup()

ValuePtr AddressValue::Dup ( std::ostream &  output)
overridevirtual

Duplicates the value.

Parameters
[out]outputThe stream to output any necessary assignment.
Returns
A Value corresponding to a duplicate of the value.

Reimplemented from IntValue.

◆ GetSigned()

int32 AddressValue::GetSigned ( )
overridevirtual

Always throws {.

See also
WrongTypeException}.

A memory address can't ever be signed.

Returns
Nothing.
Exceptions
WrongTypeExceptionalways.

Reimplemented from IntValue.

◆ IsAddress()

bool AddressValue::IsAddress ( )
overridevirtual

Return whether or not the Value is an address.

Returns
True.

Reimplemented from Value.

◆ operator=()

AddressValue & AddressValue::operator= ( const AddressValue value)
delete

Copy constructor, disabled.

Parameters
[in]valueThe value to copy.

◆ Print()

std::ostream & AddressValue::Print ( std::ostream &  output) const
overridevirtual

Print the value to a stream.

Parameters
[out]outputThe stream to write to.
Returns
The stream used for output.

Reimplemented from IntValue.


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