C++ Mathematical Expression Library (ExprTk) http://www.partow.net/programming/exprtk/index.html
This commit is contained in:
parent
8893d97a44
commit
4dd2a8a7cc
35
exprtk.hpp
35
exprtk.hpp
|
@ -9842,27 +9842,24 @@ namespace exprtk
|
||||||
range_list_[i].type_size = sizeof(char);
|
range_list_[i].type_size = sizeof(char);
|
||||||
range_list_[i].str_node = sbn;
|
range_list_[i].str_node = sbn;
|
||||||
|
|
||||||
if (is_generally_string_node(arg_list_[i]))
|
range_interface_t* ri = reinterpret_cast<range_interface_t*>(0);
|
||||||
|
|
||||||
|
if (0 == (ri = dynamic_cast<range_interface_t*>(arg_list_[i])))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
range_t& rp = ri->range_ref();
|
||||||
|
|
||||||
|
if (
|
||||||
|
rp.const_range() &&
|
||||||
|
is_const_string_range_node(arg_list_[i])
|
||||||
|
)
|
||||||
{
|
{
|
||||||
range_interface_t* ri = reinterpret_cast<range_interface_t*>(0);
|
ts.size = rp.const_size();
|
||||||
|
ts.data = static_cast<char*>(ts.data) + rp.n0_c.second;
|
||||||
if (0 == (ri = dynamic_cast<range_interface_t*>(arg_list_[i])))
|
range_list_[i].range = reinterpret_cast<range_t*>(0);
|
||||||
return false;
|
|
||||||
|
|
||||||
range_t& rp = ri->range_ref();
|
|
||||||
|
|
||||||
if (
|
|
||||||
rp.const_range() &&
|
|
||||||
is_const_string_range_node(arg_list_[i])
|
|
||||||
)
|
|
||||||
{
|
|
||||||
ts.size = rp.const_size();
|
|
||||||
ts.data = static_cast<char*>(ts.data) + rp.n0_c.second;
|
|
||||||
range_list_[i].range = reinterpret_cast<range_t*>(0);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
range_list_[i].range = &(ri->range_ref());
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
range_list_[i].range = &(ri->range_ref());
|
||||||
}
|
}
|
||||||
else if (is_variable_node(arg_list_[i]))
|
else if (is_variable_node(arg_list_[i]))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue