Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Public Member Functions
cli::Environment Class Reference

#include <Environment.h>

Inheritance diagram for cli::Environment:
[legend]
Collaboration diagram for cli::Environment:
[legend]

Public Member Functions

 Environment ()=default
 
 Environment (ext::optional_ref< Environment > upper)
 
std::string getBinding (const std::string &name) const
 
std::set< std::string > getBindingNames () const
 
void setBinding (std::string name, std::string value)
 
bool clearBinding (const std::string &name)
 
std::shared_ptr< abstraction::ValuegetVariable (const std::string &name) const
 
template<class T >
const T & getVariable (const std::string &name) const
 
std::set< std::string > getVariableNames () const
 
void setVariable (std::string name, std::shared_ptr< abstraction::Value > value)
 
template<class T >
void setVariable (std::string name, T value)
 
bool clearVariable (const std::string &name)
 
void setResult (std::shared_ptr< abstraction::Value > value)
 
std::shared_ptr< abstraction::ValuegetResult () const
 
cli::CommandResult execute (const std::shared_ptr< cli::LineInterface > &lineInterface)
 
cli::CommandResult execute_line (cli::CharSequence charSequence)
 
EnvironmentgetGlobalScope ()
 
- Public Member Functions inherited from abstraction::TemporariesHolder
 TemporariesHolder ()=default
 
 TemporariesHolder (const TemporariesHolder &)=delete
 
 TemporariesHolder (TemporariesHolder &&)=default
 
TemporariesHolderoperator= (const TemporariesHolder &)=delete
 
TemporariesHolderoperator= (TemporariesHolder &&)=default
 
virtual ~TemporariesHolder ()=default
 
void holdTemporary (std::shared_ptr< abstraction::Value > temporary)
 
void clearTemporaries ()
 

Constructor & Destructor Documentation

◆ Environment() [1/2]

cli::Environment::Environment ( )
default

◆ Environment() [2/2]

cli::Environment::Environment ( ext::optional_ref< Environment upper)
inline

Member Function Documentation

◆ clearBinding()

bool cli::Environment::clearBinding ( const std::string &  name)
inline
Here is the call graph for this function:

◆ clearVariable()

bool cli::Environment::clearVariable ( const std::string &  name)
inline
Here is the call graph for this function:

◆ execute()

cli::CommandResult cli::Environment::execute ( const std::shared_ptr< cli::LineInterface > &  lineInterface)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ execute_line()

cli::CommandResult cli::Environment::execute_line ( cli::CharSequence  charSequence)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBinding()

std::string cli::Environment::getBinding ( const std::string &  name) const
Here is the caller graph for this function:

◆ getBindingNames()

std::set< std::string > cli::Environment::getBindingNames ( ) const
inline
Here is the caller graph for this function:

◆ getGlobalScope()

Environment & cli::Environment::getGlobalScope ( )

◆ getResult()

std::shared_ptr< abstraction::Value > cli::Environment::getResult ( ) const
inline
Here is the caller graph for this function:

◆ getVariable() [1/2]

std::shared_ptr< abstraction::Value > cli::Environment::getVariable ( const std::string &  name) const
inline
Here is the caller graph for this function:

◆ getVariable() [2/2]

template<class T >
const T & cli::Environment::getVariable ( const std::string &  name) const
inline

◆ getVariableNames()

std::set< std::string > cli::Environment::getVariableNames ( ) const
inline
Here is the caller graph for this function:

◆ setBinding()

void cli::Environment::setBinding ( std::string  name,
std::string  value 
)
inline
Here is the caller graph for this function:

◆ setResult()

void cli::Environment::setResult ( std::shared_ptr< abstraction::Value value)
inline
Here is the caller graph for this function:

◆ setVariable() [1/2]

void cli::Environment::setVariable ( std::string  name,
std::shared_ptr< abstraction::Value value 
)
inline
Here is the caller graph for this function:

◆ setVariable() [2/2]

template<class T >
void cli::Environment::setVariable ( std::string  name,
value 
)
inline

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