26 template <
typename A, 
typename F >
 
   27 void runRange(A from, A to, A step, F&& go) {
 
   28 #define GO(x) go(Tuple<RamDomain, 1>{ramBitCast(x)}) 
   30         for (
auto x = from; x < to; x += step) {
 
   33     } 
else if (step < 0) {
 
   34         for (
auto x = from; to < x; x += step) {
 
   37     } 
else if (from != to) {
 
   44 template <
typename A, 
typename F >
 
   45 void runRange(A from, A to, F&& go) {
 
   46     return runRange(from, to, A(from <= to ? 1 : -1), std::forward<F>(go));
 
   52         if constexpr (std::is_same_v<RamFloat, A>) {
 
   54         } 
else if constexpr (std::is_same_v<RamSigned, A>) {
 
   56         } 
else if constexpr (std::is_same_v<RamUnsigned, A>) {
 
   60         tfm::format(std::cerr, 
"error: wrong string provided by `to_number(\"%s\")` functor.\n", src);
 
   68     return (x || y) && (!x != !y);