OpcUaCanOpen
CANopen OPC-UA server
exprtk::parser< T >::scope_element_manager Class Reference

Public Types

typedef expression_node_texpression_node_ptr
 
typedef variable_node_tvariable_node_ptr
 
typedef parser< T > parser_t
 

Public Member Functions

 scope_element_manager (parser< T > &p)
 
std::size_t size () const
 
bool empty () const
 
scope_elementget_element (const std::size_t &index)
 
scope_elementget_element (const std::string &var_name, const std::size_t index=std::numeric_limits< std::size_t >::max())
 
scope_elementget_active_element (const std::string &var_name, const std::size_t index=std::numeric_limits< std::size_t >::max())
 
bool add_element (const scope_element &se)
 
void deactivate (const std::size_t &scope_depth)
 
void free_element (scope_element &se)
 
void cleanup ()
 
std::size_t next_ip_index ()
 
expression_node_ptr get_variable (const T &v)
 

Private Member Functions

scope_element_manageroperator= (const scope_element_manager &)
 

Private Attributes

parser_tparser_
 
std::vector< scope_elementelement_
 
scope_element null_element_
 
std::size_t input_param_cnt_
 

Detailed Description

template<typename T>
class exprtk::parser< T >::scope_element_manager

Definition at line 18503 of file exprtk.hpp.

Member Typedef Documentation

◆ expression_node_ptr

Definition at line 18507 of file exprtk.hpp.

◆ parser_t

template<typename T>
typedef parser<T> exprtk::parser< T >::scope_element_manager::parser_t

Definition at line 18509 of file exprtk.hpp.

◆ variable_node_ptr

Definition at line 18508 of file exprtk.hpp.

Constructor & Destructor Documentation

◆ scope_element_manager()

template<typename T>
exprtk::parser< T >::scope_element_manager::scope_element_manager ( parser< T > &  p)
inlineexplicit

Definition at line 18511 of file exprtk.hpp.

Member Function Documentation

◆ add_element()

template<typename T>
bool exprtk::parser< T >::scope_element_manager::add_element ( const scope_element se)
inline

Definition at line 18577 of file exprtk.hpp.

◆ cleanup()

template<typename T>
void exprtk::parser< T >::scope_element_manager::cleanup ( )
inline

Definition at line 18651 of file exprtk.hpp.

◆ deactivate()

template<typename T>
void exprtk::parser< T >::scope_element_manager::deactivate ( const std::size_t &  scope_depth)
inline

Definition at line 18600 of file exprtk.hpp.

◆ empty()

template<typename T>
bool exprtk::parser< T >::scope_element_manager::empty ( ) const
inline

Definition at line 18521 of file exprtk.hpp.

◆ free_element()

template<typename T>
void exprtk::parser< T >::scope_element_manager::free_element ( scope_element se)
inline

Definition at line 18620 of file exprtk.hpp.

◆ get_active_element()

template<typename T>
scope_element& exprtk::parser< T >::scope_element_manager::get_active_element ( const std::string &  var_name,
const std::size_t  index = std::numeric_limits<std::size_t>::max() 
)
inline

Definition at line 18555 of file exprtk.hpp.

◆ get_element() [1/2]

template<typename T>
scope_element& exprtk::parser< T >::scope_element_manager::get_element ( const std::size_t &  index)
inline

Definition at line 18526 of file exprtk.hpp.

◆ get_element() [2/2]

template<typename T>
scope_element& exprtk::parser< T >::scope_element_manager::get_element ( const std::string &  var_name,
const std::size_t  index = std::numeric_limits<std::size_t>::max() 
)
inline

Definition at line 18534 of file exprtk.hpp.

◆ get_variable()

template<typename T>
expression_node_ptr exprtk::parser< T >::scope_element_manager::get_variable ( const T &  v)
inline

Definition at line 18668 of file exprtk.hpp.

◆ next_ip_index()

template<typename T>
std::size_t exprtk::parser< T >::scope_element_manager::next_ip_index ( )
inline

Definition at line 18663 of file exprtk.hpp.

◆ operator=()

template<typename T>
scope_element_manager& exprtk::parser< T >::scope_element_manager::operator= ( const scope_element_manager )
private

◆ size()

template<typename T>
std::size_t exprtk::parser< T >::scope_element_manager::size ( ) const
inline

Definition at line 18516 of file exprtk.hpp.

Member Data Documentation

◆ element_

template<typename T>
std::vector<scope_element> exprtk::parser< T >::scope_element_manager::element_
private

Definition at line 18697 of file exprtk.hpp.

◆ input_param_cnt_

template<typename T>
std::size_t exprtk::parser< T >::scope_element_manager::input_param_cnt_
private

Definition at line 18699 of file exprtk.hpp.

◆ null_element_

template<typename T>
scope_element exprtk::parser< T >::scope_element_manager::null_element_
private

Definition at line 18698 of file exprtk.hpp.

◆ parser_

template<typename T>
parser_t& exprtk::parser< T >::scope_element_manager::parser_
private

Definition at line 18696 of file exprtk.hpp.


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