8 #if POINCARE_TESTS_PRINT_EXPRESSIONS 9 #include "../src/expression_debug.h" 17 for (
char *
c = expression; *
c;
c++) {
31 for (
char *
c = expression; *
c;
c++) {
47 strlcpy(buffer, expression,
sizeof(buffer));
49 Expression * result = Expression::parse(buffer);
63 Expression::Simplify(&e, globalContext);
75 if (m->
type() == Expression::Type::Matrix) {
93 #if POINCARE_TESTS_PRINT_EXPRESSIONS 94 cout <<
"---- Simplify: " << expression <<
"----" << endl;
96 Expression::Simplify(&e, globalContext, angleUnit);
100 #if POINCARE_TESTS_PRINT_EXPRESSIONS 102 cout <<
"---- serialize to: " << buffer <<
" ----" << endl;
103 cout <<
"----- compared to: " << simplifiedExpression <<
" ----\n" << endl;
template void assert_parsed_expression_evaluates_to< double >(char const *, Poincare::Complex< double > *, int, int, Poincare::Expression::AngleUnit)
void translate_in_ASCII_chars(char *expression)
Expression * approximate(Context &context, AngleUnit angleUnit=AngleUnit::Default) const
size_t strlcpy(char *dst, const char *src, size_t len)
Expression * parse_expression(const char *expression)
void assert_parsed_expression_type(const char *expression, Poincare::Expression::Type type)
void assert_parsed_expression_polynomial_degree(const char *expression, int degree, char symbolName)
virtual int numberOfOperands() const =0
void assert_parsed_expression_simplify_to(const char *expression, const char *simplifiedExpression, Expression::AngleUnit angleUnit)
void print_expression(const Expression *e, int indentationLevel)
void assert_parsed_expression_evaluates_to(const char *expression, Complex< T > *results, int numberOfRows, int numberOfColumns, Expression::AngleUnit angleUnit)
constexpr uint8_t numberOfColumns
template void assert_parsed_expression_evaluates_to< float >(char const *, Poincare::Complex< float > *, int, int, Poincare::Expression::AngleUnit)
void quiz_print(const char *message)
constexpr uint8_t numberOfRows
int strcmp(const char *s1, const char *s2)
const Expression * operand(int i) const
void translate_in_special_chars(char *expression)
virtual int polynomialDegree(char symbolName) const
virtual Type type() const =0
virtual int writeTextInBuffer(char *buffer, int bufferSize, int numberOfSignificantDigits=PrintFloat::k_numberOfStoredSignificantDigits) const =0