OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Public Types | Public Member Functions | Private Attributes | List of all members
client::code_gen::requirements Struct Reference

#include <requirements.hpp>

Public Types

typedef bool result_type
 

Public Member Functions

template<typename ErrorHandler >
 requirements (ErrorHandler &error_handler_)
 
bool operator() (ast::nil)
 
bool operator() (unsigned int)
 
bool operator() (double)
 
bool operator() (bool)
 
bool operator() (ast::quoted_string const &)
 
bool operator() (ast::operation const &x)
 
bool operator() (ast::unary const &x)
 
bool operator() (ast::identifier const &x)
 
bool operator() (ast::function_call const &x)
 
bool operator() (ast::expression const &x)
 
std::set< std::string > variables ()
 
std::set< std::string > functions ()
 

Private Attributes

boost::function< void(int tag, std::string const &what)> error_handler
 
std::set< std::string > variables_
 
std::set< std::string > functions_
 

Detailed Description

Definition at line 21 of file requirements.hpp.

Member Typedef Documentation

◆ result_type

Definition at line 23 of file requirements.hpp.

Constructor & Destructor Documentation

◆ requirements()

template<typename ErrorHandler >
client::code_gen::requirements::requirements ( ErrorHandler &  error_handler_)
inline

Definition at line 26 of file requirements.hpp.

References PyOpal::PyPolynomialPatch::function().

Here is the call graph for this function:

Member Function Documentation

◆ functions()

std::set< std::string > client::code_gen::requirements::functions ( )
inline

Definition at line 87 of file requirements.hpp.

References functions_.

Referenced by Expression::parse().

◆ operator()() [1/10]

bool client::code_gen::requirements::operator() ( ast::expression const &  x)
inline

◆ operator()() [2/10]

bool client::code_gen::requirements::operator() ( ast::function_call const &  x)
inline

Definition at line 61 of file requirements.hpp.

References arg(), client::ast::function_call::args, client::ast::function_call::function_name, functions_, and client::ast::identifier::name.

Here is the call graph for this function:

◆ operator()() [3/10]

bool client::code_gen::requirements::operator() ( ast::identifier const &  x)
inline

Definition at line 55 of file requirements.hpp.

References client::ast::identifier::name, and variables_.

◆ operator()() [4/10]

bool client::code_gen::requirements::operator() ( ast::nil  )
inline

Definition at line 37 of file requirements.hpp.

◆ operator()() [5/10]

bool client::code_gen::requirements::operator() ( ast::operation const &  x)
inline

Definition at line 43 of file requirements.hpp.

References client::ast::operation::operand_.

◆ operator()() [6/10]

bool client::code_gen::requirements::operator() ( ast::quoted_string const &  )
inline

Definition at line 41 of file requirements.hpp.

◆ operator()() [7/10]

bool client::code_gen::requirements::operator() ( ast::unary const &  x)
inline

Definition at line 49 of file requirements.hpp.

References client::ast::unary::operand_.

◆ operator()() [8/10]

bool client::code_gen::requirements::operator() ( bool  )
inline

Definition at line 40 of file requirements.hpp.

◆ operator()() [9/10]

bool client::code_gen::requirements::operator() ( double  )
inline

Definition at line 39 of file requirements.hpp.

◆ operator()() [10/10]

bool client::code_gen::requirements::operator() ( unsigned int  )
inline

Definition at line 38 of file requirements.hpp.

◆ variables()

std::set< std::string > client::code_gen::requirements::variables ( )
inline

Definition at line 86 of file requirements.hpp.

References variables_.

Referenced by Expression::parse().

Member Data Documentation

◆ error_handler

boost::function< void(int tag, std::string const& what)> client::code_gen::requirements::error_handler
private

Definition at line 93 of file requirements.hpp.

◆ functions_

std::set<std::string> client::code_gen::requirements::functions_
private

Definition at line 96 of file requirements.hpp.

Referenced by functions(), and operator()().

◆ variables_

std::set<std::string> client::code_gen::requirements::variables_
private

Definition at line 95 of file requirements.hpp.

Referenced by operator()(), and variables().


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