C++ Mathematical Expression Toolkit (ExprTk) release
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
exprtk::lexer::helper::helper_assembly Struct Reference
Collaboration diagram for exprtk::lexer::helper::helper_assembly:
[legend]

Public Member Functions

bool register_scanner (lexer::token_scanner *scanner)
 
bool register_modifier (lexer::token_modifier *modifier)
 
bool register_joiner (lexer::token_joiner *joiner)
 
bool register_inserter (lexer::token_inserter *inserter)
 
bool run_modifiers (lexer::generator &g)
 
bool run_joiners (lexer::generator &g)
 
bool run_inserters (lexer::generator &g)
 
bool run_scanners (lexer::generator &g)
 

Public Attributes

std::vector< lexer::token_scanner * > token_scanner_list
 
std::vector< lexer::token_modifier * > token_modifier_list
 
std::vector< lexer::token_joiner * > token_joiner_list
 
std::vector< lexer::token_inserter * > token_inserter_list
 
lexer::token_scannererror_token_scanner
 
lexer::token_modifiererror_token_modifier
 
lexer::token_joinererror_token_joiner
 
lexer::token_insertererror_token_inserter
 

Detailed Description

Definition at line 4244 of file exprtk.hpp.

Member Function Documentation

◆ register_inserter()

bool exprtk::lexer::helper::helper_assembly::register_inserter ( lexer::token_inserter inserter)
inline

Definition at line 4288 of file exprtk.hpp.

4289 {
4290 if (token_inserter_list.end() != std::find(token_inserter_list.begin(),
4291 token_inserter_list.end (),
4292 inserter))
4293 {
4294 return false;
4295 }
4296
4297 token_inserter_list.push_back(inserter);
4298
4299 return true;
4300 }
std::vector< lexer::token_inserter * > token_inserter_list
Definition exprtk.hpp:4393

References token_inserter_list.

Referenced by exprtk::parser< T >::init_precompilation().

Here is the caller graph for this function:

◆ register_joiner()

bool exprtk::lexer::helper::helper_assembly::register_joiner ( lexer::token_joiner joiner)
inline

Definition at line 4274 of file exprtk.hpp.

4275 {
4276 if (token_joiner_list.end() != std::find(token_joiner_list.begin(),
4277 token_joiner_list.end (),
4278 joiner))
4279 {
4280 return false;
4281 }
4282
4283 token_joiner_list.push_back(joiner);
4284
4285 return true;
4286 }
std::vector< lexer::token_joiner * > token_joiner_list
Definition exprtk.hpp:4392

References token_joiner_list.

Referenced by exprtk::parser< T >::init_precompilation().

Here is the caller graph for this function:

◆ register_modifier()

bool exprtk::lexer::helper::helper_assembly::register_modifier ( lexer::token_modifier modifier)
inline

Definition at line 4260 of file exprtk.hpp.

4261 {
4262 if (token_modifier_list.end() != std::find(token_modifier_list.begin(),
4263 token_modifier_list.end (),
4264 modifier))
4265 {
4266 return false;
4267 }
4268
4269 token_modifier_list.push_back(modifier);
4270
4271 return true;
4272 }
std::vector< lexer::token_modifier * > token_modifier_list
Definition exprtk.hpp:4391

References token_modifier_list.

Referenced by exprtk::parser< T >::init_precompilation().

Here is the caller graph for this function:

◆ register_scanner()

bool exprtk::lexer::helper::helper_assembly::register_scanner ( lexer::token_scanner scanner)
inline

Definition at line 4246 of file exprtk.hpp.

4247 {
4248 if (token_scanner_list.end() != std::find(token_scanner_list.begin(),
4249 token_scanner_list.end (),
4250 scanner))
4251 {
4252 return false;
4253 }
4254
4255 token_scanner_list.push_back(scanner);
4256
4257 return true;
4258 }
std::vector< lexer::token_scanner * > token_scanner_list
Definition exprtk.hpp:4390

References token_scanner_list.

Referenced by exprtk::parser< T >::init_precompilation().

Here is the caller graph for this function:

◆ run_inserters()

bool exprtk::lexer::helper::helper_assembly::run_inserters ( lexer::generator g)
inline

Definition at line 4346 of file exprtk.hpp.

4347 {
4348 error_token_inserter = reinterpret_cast<lexer::token_inserter*>(0);
4349
4350 for (std::size_t i = 0; i < token_inserter_list.size(); ++i)
4351 {
4352 lexer::token_inserter& inserter = (*token_inserter_list[i]);
4353
4354 inserter.reset();
4355 inserter.process(g);
4356
4357 if (!inserter.result())
4358 {
4360
4361 return false;
4362 }
4363 }
4364
4365 return true;
4366 }
lexer::token_inserter * error_token_inserter
Definition exprtk.hpp:4398

References error_token_inserter, exprtk::lexer::token_inserter::process(), exprtk::lexer::helper_interface::reset(), exprtk::lexer::helper_interface::result(), and token_inserter_list.

Referenced by exprtk::parser< T >::run_assemblies().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ run_joiners()

bool exprtk::lexer::helper::helper_assembly::run_joiners ( lexer::generator g)
inline

Definition at line 4324 of file exprtk.hpp.

4325 {
4326 error_token_joiner = reinterpret_cast<lexer::token_joiner*>(0);
4327
4328 for (std::size_t i = 0; i < token_joiner_list.size(); ++i)
4329 {
4330 lexer::token_joiner& joiner = (*token_joiner_list[i]);
4331
4332 joiner.reset();
4333 joiner.process(g);
4334
4335 if (!joiner.result())
4336 {
4338
4339 return false;
4340 }
4341 }
4342
4343 return true;
4344 }
lexer::token_joiner * error_token_joiner
Definition exprtk.hpp:4397

References error_token_joiner, exprtk::lexer::token_joiner::process(), exprtk::lexer::helper_interface::reset(), exprtk::lexer::helper_interface::result(), and token_joiner_list.

Referenced by exprtk::parser< T >::run_assemblies().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ run_modifiers()

bool exprtk::lexer::helper::helper_assembly::run_modifiers ( lexer::generator g)
inline

Definition at line 4302 of file exprtk.hpp.

4303 {
4304 error_token_modifier = reinterpret_cast<lexer::token_modifier*>(0);
4305
4306 for (std::size_t i = 0; i < token_modifier_list.size(); ++i)
4307 {
4308 lexer::token_modifier& modifier = (*token_modifier_list[i]);
4309
4310 modifier.reset();
4311 modifier.process(g);
4312
4313 if (!modifier.result())
4314 {
4316
4317 return false;
4318 }
4319 }
4320
4321 return true;
4322 }
lexer::token_modifier * error_token_modifier
Definition exprtk.hpp:4396

References error_token_modifier, exprtk::lexer::token_modifier::process(), exprtk::lexer::helper_interface::reset(), exprtk::lexer::helper_interface::result(), and token_modifier_list.

Referenced by exprtk::parser< T >::run_assemblies().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ run_scanners()

bool exprtk::lexer::helper::helper_assembly::run_scanners ( lexer::generator g)
inline

Definition at line 4368 of file exprtk.hpp.

4369 {
4370 error_token_scanner = reinterpret_cast<lexer::token_scanner*>(0);
4371
4372 for (std::size_t i = 0; i < token_scanner_list.size(); ++i)
4373 {
4374 lexer::token_scanner& scanner = (*token_scanner_list[i]);
4375
4376 scanner.reset();
4377 scanner.process(g);
4378
4379 if (!scanner.result())
4380 {
4382
4383 return false;
4384 }
4385 }
4386
4387 return true;
4388 }
lexer::token_scanner * error_token_scanner
Definition exprtk.hpp:4395

References error_token_scanner, exprtk::lexer::token_scanner::process(), exprtk::lexer::helper_interface::reset(), exprtk::lexer::helper_interface::result(), and token_scanner_list.

Referenced by exprtk::parser< T >::run_assemblies().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ error_token_inserter

lexer::token_inserter* exprtk::lexer::helper::helper_assembly::error_token_inserter

Definition at line 4398 of file exprtk.hpp.

Referenced by run_inserters().

◆ error_token_joiner

lexer::token_joiner* exprtk::lexer::helper::helper_assembly::error_token_joiner

Definition at line 4397 of file exprtk.hpp.

Referenced by run_joiners().

◆ error_token_modifier

lexer::token_modifier* exprtk::lexer::helper::helper_assembly::error_token_modifier

Definition at line 4396 of file exprtk.hpp.

Referenced by run_modifiers().

◆ error_token_scanner

lexer::token_scanner* exprtk::lexer::helper::helper_assembly::error_token_scanner

Definition at line 4395 of file exprtk.hpp.

Referenced by exprtk::parser< T >::run_assemblies(), and run_scanners().

◆ token_inserter_list

std::vector<lexer::token_inserter*> exprtk::lexer::helper::helper_assembly::token_inserter_list

◆ token_joiner_list

std::vector<lexer::token_joiner*> exprtk::lexer::helper::helper_assembly::token_joiner_list

◆ token_modifier_list

std::vector<lexer::token_modifier*> exprtk::lexer::helper::helper_assembly::token_modifier_list

◆ token_scanner_list

std::vector<lexer::token_scanner*> exprtk::lexer::helper::helper_assembly::token_scanner_list

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