GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
exprtk::parser< T >::type_checker Class Reference

Classes

struct  function_prototype_t
 

Public Types

enum  return_type_t { e_overload = ' ' , e_numeric = 'T' , e_string = 'S' }
 
typedef parser< T > parser_t
 
typedef std::vector< function_prototype_tfunction_definition_list_t
 

Public Member Functions

 type_checker (parser_t &p, const std::string &func_name, const std::string &func_prototypes, const return_type_t default_return_type)
 
bool verify (const std::string &param_seq, std::size_t &pseq_index)
 
std::size_t paramseq_count () const
 
std::string paramseq (const std::size_t &index) const
 
return_type_t return_type (const std::size_t &index) const
 
bool invalid () const
 
bool allow_zero_parameters () const
 

Private Member Functions

std::vector< std::string > split_param_seq (const std::string &param_seq, const details::char_t delimiter='|') const
 
bool is_valid_token (std::string param_seq, function_prototype_t &funcproto) const
 
void parse_function_prototypes (const std::string &func_prototypes)
 
 type_checker (const type_checker &) exprtk_delete
 
type_checkeroperator= (const type_checker &) exprtk_delete
 

Private Attributes

bool invalid_state_
 
parser_tparser_
 
std::string function_name_
 
const return_type_t default_return_type_
 
function_definition_list_t function_definition_list_
 

Member Typedef Documentation

◆ function_definition_list_t

template<typename T >
typedef std::vector<function_prototype_t> exprtk::parser< T >::type_checker::function_definition_list_t

◆ parser_t

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

Member Enumeration Documentation

◆ return_type_t

template<typename T >
enum exprtk::parser::type_checker::return_type_t
Enumerator
e_overload 
e_numeric 
e_string 

Constructor & Destructor Documentation

◆ type_checker() [1/2]

template<typename T >
exprtk::parser< T >::type_checker::type_checker ( parser_t p,
const std::string &  func_name,
const std::string &  func_prototypes,
const return_type_t  default_return_type 
)
inline

◆ type_checker() [2/2]

template<typename T >
exprtk::parser< T >::type_checker::type_checker ( const type_checker )
private

Member Function Documentation

◆ allow_zero_parameters()

template<typename T >
bool exprtk::parser< T >::type_checker::allow_zero_parameters ( ) const
inline

◆ invalid()

template<typename T >
bool exprtk::parser< T >::type_checker::invalid ( ) const
inline

◆ is_valid_token()

template<typename T >
bool exprtk::parser< T >::type_checker::is_valid_token ( std::string  param_seq,
function_prototype_t funcproto 
) const
inlineprivate

◆ operator=()

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

◆ paramseq()

template<typename T >
std::string exprtk::parser< T >::type_checker::paramseq ( const std::size_t &  index) const
inline

◆ paramseq_count()

template<typename T >
std::size_t exprtk::parser< T >::type_checker::paramseq_count ( ) const
inline

◆ parse_function_prototypes()

template<typename T >
void exprtk::parser< T >::type_checker::parse_function_prototypes ( const std::string &  func_prototypes)
inlineprivate

◆ return_type()

template<typename T >
return_type_t exprtk::parser< T >::type_checker::return_type ( const std::size_t &  index) const
inline

◆ split_param_seq()

template<typename T >
std::vector<std::string> exprtk::parser< T >::type_checker::split_param_seq ( const std::string &  param_seq,
const details::char_t  delimiter = '|' 
) const
inlineprivate

◆ verify()

template<typename T >
bool exprtk::parser< T >::type_checker::verify ( const std::string &  param_seq,
std::size_t &  pseq_index 
)
inline

Member Data Documentation

◆ default_return_type_

template<typename T >
const return_type_t exprtk::parser< T >::type_checker::default_return_type_
private

◆ function_definition_list_

template<typename T >
function_definition_list_t exprtk::parser< T >::type_checker::function_definition_list_
private

◆ function_name_

template<typename T >
std::string exprtk::parser< T >::type_checker::function_name_
private

◆ invalid_state_

template<typename T >
bool exprtk::parser< T >::type_checker::invalid_state_
private

◆ parser_

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

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