Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Public Member Functions | Protected Member Functions | Friends
abstraction::Value Class Referenceabstract

#include <Value.hpp>

Inheritance diagram for abstraction::Value:
[legend]
Collaboration diagram for abstraction::Value:
[legend]

Public Member Functions

virtual ~Value () noexcept=default
 
std::shared_ptr< abstraction::Valueclone (abstraction::TypeQualifiers::TypeQualifierSet typeQualifiers, bool isTemporary)
 
virtual std::shared_ptr< abstraction::ValuegetProxyAbstraction ()
 
virtual ext::type_index getTypeIndex () const =0
 
std::string getType () const
 
virtual abstraction::TypeQualifiers::TypeQualifierSet getTypeQualifiers () const =0
 
virtual bool isTemporary () const =0
 

Protected Member Functions

virtual std::shared_ptr< abstraction::ValueasValue (bool move, bool isTemporary)=0
 

Friends

class ValueReference
 

Constructor & Destructor Documentation

◆ ~Value()

virtual abstraction::Value::~Value ( )
virtualdefaultnoexcept

Member Function Documentation

◆ asValue()

virtual std::shared_ptr< abstraction::Value > abstraction::Value::asValue ( bool  move,
bool  isTemporary 
)
protectedpure virtual

Implemented in abstraction::PackingAbstractionImpl::LazyValue, and abstraction::Void.

Here is the caller graph for this function:

◆ clone()

std::shared_ptr< abstraction::Value > abstraction::Value::clone ( abstraction::TypeQualifiers::TypeQualifierSet  typeQualifiers,
bool  isTemporary 
)
Here is the call graph for this function:

◆ getProxyAbstraction()

std::shared_ptr< abstraction::Value > abstraction::Value::getProxyAbstraction ( )
virtual

Reimplemented in abstraction::PackingAbstractionImpl::LazyValue, and abstraction::ValueReference.

Here is the caller graph for this function:

◆ getType()

std::string abstraction::Value::getType ( ) const
Here is the call graph for this function:

◆ getTypeIndex()

virtual ext::type_index abstraction::Value::getTypeIndex ( ) const
pure virtual

Implemented in abstraction::PackingAbstractionImpl::LazyValue, abstraction::ValueReference, and abstraction::Void.

Here is the caller graph for this function:

◆ getTypeQualifiers()

virtual abstraction::TypeQualifiers::TypeQualifierSet abstraction::Value::getTypeQualifiers ( ) const
pure virtual

Implemented in abstraction::PackingAbstractionImpl::LazyValue, abstraction::ValueReference, and abstraction::Void.

Here is the caller graph for this function:

◆ isTemporary()

virtual bool abstraction::Value::isTemporary ( ) const
pure virtual

Implemented in abstraction::PackingAbstractionImpl::LazyValue, abstraction::ValueReference, and abstraction::Void.

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ ValueReference

friend class ValueReference
friend

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