Main MRPT website > C++ reference for MRPT 1.5.3
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends
exprtk::lexer::generator Class Reference

Detailed Description

Definition at line 2110 of file exprtk.hpp.

#include <mrpt/otherlibs/exprtk.hpp>

Public Types

typedef token token_t
 
typedef std::vector< token_ttoken_list_t
 
typedef std::vector< token_t >::iterator token_list_itr_t
 
typedef details::char_t char_t
 

Public Member Functions

 generator ()
 
void clear ()
 
bool process (const std::string &str)
 
bool empty () const
 
std::size_t size () const
 
void begin ()
 
void store ()
 
void restore ()
 
token_tnext_token ()
 
token_tpeek_next_token ()
 
token_toperator[] (const std::size_t &index)
 
token_t operator[] (const std::size_t &index) const
 
bool finished () const
 
void insert_front (token_t::token_type tk_type)
 
std::string substr (const std::size_t &begin, const std::size_t &end)
 
std::string remaining () const
 

Private Member Functions

bool is_end (const char *itr)
 
void skip_whitespace ()
 
void skip_comments ()
 
void scan_token ()
 
void scan_operator ()
 
void scan_symbol ()
 
void scan_number ()
 
void scan_special_function ()
 
void scan_string ()
 

Private Attributes

token_list_t token_list_
 
token_list_itr_t token_itr_
 
token_list_itr_t store_token_itr_
 
token_t eof_token_
 
const char * base_itr_
 
const char * s_itr_
 
const char * s_end_
 

Friends

class token_scanner
 
class token_modifier
 
class token_inserter
 
class token_joiner
 

Member Typedef Documentation

◆ char_t

Definition at line 2117 of file exprtk.hpp.

◆ token_list_itr_t

Definition at line 2116 of file exprtk.hpp.

◆ token_list_t

Definition at line 2115 of file exprtk.hpp.

◆ token_t

Definition at line 2114 of file exprtk.hpp.

Constructor & Destructor Documentation

◆ generator()

exprtk::lexer::generator::generator ( )
inline

Definition at line 2119 of file exprtk.hpp.

References mrpt::utils::clear().

Member Function Documentation

◆ begin()

void exprtk::lexer::generator::begin ( )
inline

Definition at line 2169 of file exprtk.hpp.

◆ clear()

void exprtk::lexer::generator::clear ( )
inline

Definition at line 2127 of file exprtk.hpp.

◆ empty()

bool exprtk::lexer::generator::empty ( ) const
inline

Definition at line 2159 of file exprtk.hpp.

◆ finished()

bool exprtk::lexer::generator::finished ( ) const
inline

Definition at line 2221 of file exprtk.hpp.

◆ insert_front()

void exprtk::lexer::generator::insert_front ( token_t::token_type  tk_type)
inline

Definition at line 2226 of file exprtk.hpp.

References exprtk::details::t(), and exprtk::lexer::token::type.

◆ is_end()

bool exprtk::lexer::generator::is_end ( const char *  itr)
inlineprivate

Definition at line 2260 of file exprtk.hpp.

◆ next_token()

token_t& exprtk::lexer::generator::next_token ( )
inline

Definition at line 2185 of file exprtk.hpp.

◆ operator[]() [1/2]

token_t& exprtk::lexer::generator::operator[] ( const std::size_t &  index)
inline

Definition at line 2205 of file exprtk.hpp.

◆ operator[]() [2/2]

token_t exprtk::lexer::generator::operator[] ( const std::size_t &  index) const
inline

Definition at line 2213 of file exprtk.hpp.

◆ peek_next_token()

token_t& exprtk::lexer::generator::peek_next_token ( )
inline

Definition at line 2195 of file exprtk.hpp.

◆ process()

bool exprtk::lexer::generator::process ( const std::string &  str)
inline

Definition at line 2137 of file exprtk.hpp.

◆ remaining()

std::string exprtk::lexer::generator::remaining ( ) const
inline

Definition at line 2248 of file exprtk.hpp.

◆ restore()

void exprtk::lexer::generator::restore ( )
inline

Definition at line 2180 of file exprtk.hpp.

◆ scan_number()

void exprtk::lexer::generator::scan_number ( )
inlineprivate

◆ scan_operator()

void exprtk::lexer::generator::scan_operator ( )
inlineprivate

◆ scan_special_function()

void exprtk::lexer::generator::scan_special_function ( )
inlineprivate

◆ scan_string()

void exprtk::lexer::generator::scan_string ( )
inlineprivate

◆ scan_symbol()

void exprtk::lexer::generator::scan_symbol ( )
inlineprivate

◆ scan_token()

void exprtk::lexer::generator::scan_token ( )
inlineprivate

◆ size()

std::size_t exprtk::lexer::generator::size ( ) const
inline

Definition at line 2164 of file exprtk.hpp.

Referenced by exprtk::lexer::helper::dump().

◆ skip_comments()

void exprtk::lexer::generator::skip_comments ( )
inlineprivate

Definition at line 2273 of file exprtk.hpp.

◆ skip_whitespace()

void exprtk::lexer::generator::skip_whitespace ( )
inlineprivate

Definition at line 2265 of file exprtk.hpp.

References exprtk::details::is_whitespace().

◆ store()

void exprtk::lexer::generator::store ( )
inline

Definition at line 2175 of file exprtk.hpp.

◆ substr()

std::string exprtk::lexer::generator::substr ( const std::size_t &  begin,
const std::size_t &  end 
)
inline

Definition at line 2240 of file exprtk.hpp.

References begin(), and end().

Friends And Related Function Documentation

◆ token_inserter

friend class token_inserter
friend

Definition at line 2732 of file exprtk.hpp.

◆ token_joiner

friend class token_joiner
friend

Definition at line 2733 of file exprtk.hpp.

◆ token_modifier

friend class token_modifier
friend

Definition at line 2731 of file exprtk.hpp.

◆ token_scanner

friend class token_scanner
friend

Definition at line 2730 of file exprtk.hpp.

Member Data Documentation

◆ base_itr_

const char* exprtk::lexer::generator::base_itr_
private

Definition at line 2726 of file exprtk.hpp.

◆ eof_token_

token_t exprtk::lexer::generator::eof_token_
private

Definition at line 2725 of file exprtk.hpp.

◆ s_end_

const char* exprtk::lexer::generator::s_end_
private

Definition at line 2728 of file exprtk.hpp.

◆ s_itr_

const char* exprtk::lexer::generator::s_itr_
private

Definition at line 2727 of file exprtk.hpp.

◆ store_token_itr_

token_list_itr_t exprtk::lexer::generator::store_token_itr_
private

Definition at line 2724 of file exprtk.hpp.

◆ token_itr_

token_list_itr_t exprtk::lexer::generator::token_itr_
private

Definition at line 2723 of file exprtk.hpp.

◆ token_list_

token_list_t exprtk::lexer::generator::token_list_
private



Page generated by Doxygen 1.8.13 for MRPT 1.5.3 at Sun Nov 26 00:44:48 UTC 2017