| 60 | typename Allocator, |
| 61 | template <typename,typename> class Sequence> |
| 62 | bool load_expression(exprtk::symbol_table<T>& symbol_table, |
| 63 | Sequence<exprtk::expression<T>,Allocator>& expr_seq) |
| 64 | { |
| 65 | exprtk::parser<double> parser; |
| 66 | |
| 67 | for (std::size_t i = 0; i < global_expression_list_size; ++i) |
| 68 | { |
| 69 | exprtk::expression<double> expression; |
| 70 | expression.register_symbol_table(symbol_table); |
| 71 | |
| 72 | if (!parser.compile(global_expression_list[i],expression)) |
| 73 | { |
| 74 | printf("[load_expression] - Parser Error: %s\tExpression: %s\n", |
| 75 | parser.error().c_str(), |
| 76 | global_expression_list[i].c_str()); |
| 77 | |
| 78 | return false; |
| 79 | } |
| 80 | |
| 81 | expr_seq.push_back(expression); |
| 82 | } |
| 83 | |
| 84 | return true; |
| 85 | } |
| 86 | |
| 87 | template <typename T> |
| 88 | void run_exprtk_benchmark(T& x, T& y, |