1 #ifndef STAN_LANG_GENERATOR_GET_VERBOSE_VAR_TYPE_HPP 2 #define STAN_LANG_GENERATOR_GET_VERBOSE_VAR_TYPE_HPP 3 4 #include <stan/lang/ast.hpp> 5 #include <string> 6 7 namespace stan { 8 namespace lang { 9 /** 10 * Return type string for variable type. 11 * 12 * @param[in] bare_type expression type 13 */ 14 std::string get_verbose_var_type(const bare_expr_type bare_type)15 get_verbose_var_type(const bare_expr_type bare_type) { 16 if (bare_type.innermost_type().is_matrix_type()) { 17 return 18 "Eigen::Matrix<local_scalar_t__, Eigen::Dynamic, Eigen::Dynamic>"; 19 } else if (bare_type.innermost_type().is_row_vector_type()) { 20 return "Eigen::Matrix<local_scalar_t__, 1, Eigen::Dynamic>"; 21 } else if (bare_type.innermost_type().is_vector_type()) { 22 return "Eigen::Matrix<local_scalar_t__, Eigen::Dynamic, 1>"; 23 } else if (bare_type.innermost_type().is_double_type()) { 24 return "local_scalar_t__"; 25 } else if (bare_type.innermost_type().is_int_type()) { 26 return "int"; 27 } 28 return "ill_formed"; 29 } 30 } 31 } 32 #endif 33