92 const std::string inline_resize_expression =
93 " var vec_original_size := v[]; "
95 " for (var i := 1; i <= 2 * vec_original_size; i += 1) "
97 " if (resize(v,i) == true and v[] == i and sum(2v) == (i^2 + i)) "
99 " println('Success: set size: ', i ,' v[] = ', v[]); "
103 " println('Error: Failed to resize vector v to size: ', i); "
107 std::vector<T> v0 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
108 std::vector<T> v1 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
118 symbol_table_t symbol_table;
119 symbol_table.add_vector (
"v", vv);
120 symbol_table.add_function(
"resize", vv_size_handler);
121 symbol_table.add_package (io_package);
123 expression_t expression;
124 expression.register_symbol_table(symbol_table);
128 if (!parser.compile(inline_resize_expression, expression))
130 printf(
"Error: %s\tExpression: %s\n",
131 parser.error().c_str(),
132 inline_resize_expression.c_str());