From 69e46f4958c5db6a3c63bd4a2908f77f22d6d13a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89milie=20Feral?= Date: Mon, 6 Feb 2017 14:03:31 +0100 Subject: [PATCH] [poincare] Namespace Poincare Change-Id: I51a84fa7978ba16f128cfe1d32c390970f2037e8 --- apps/apps_container.cpp | 2 + apps/apps_container.h | 4 +- apps/calculation/app.cpp | 2 + apps/calculation/app.h | 4 +- apps/calculation/calculation.cpp | 1 + apps/calculation/calculation.h | 18 +++---- apps/calculation/calculation_store.cpp | 1 + apps/calculation/calculation_store.h | 2 +- apps/calculation/history_controller.h | 1 - apps/calculation/local_context.cpp | 1 + apps/calculation/local_context.h | 12 ++--- .../scrollable_expression_view.cpp | 1 + apps/calculation/scrollable_expression_view.h | 2 +- apps/curve_view.cpp | 2 + apps/editable_cell_table_view_controller.cpp | 2 + apps/editable_cell_table_view_controller.h | 2 +- apps/expression_text_field_delegate.cpp | 2 + apps/expression_text_field_delegate.h | 2 +- apps/float_parameter_controller.cpp | 2 + apps/graph/app.cpp | 1 + apps/graph/app.h | 6 +-- apps/graph/function.cpp | 2 + apps/graph/function.h | 12 ++--- apps/graph/graph/graph_controller.cpp | 2 + apps/graph/graph/graph_view.cpp | 1 + apps/graph/graph/graph_view.h | 10 ++-- apps/graph/values/values_controller.cpp | 2 + apps/graph/values/values_controller.h | 2 +- apps/interactive_curve_view_controller.cpp | 2 + apps/interactive_curve_view_controller.h | 2 +- apps/interactive_curve_view_range.cpp | 2 + apps/interactive_curve_view_range.h | 2 +- apps/preferences.cpp | 2 + apps/preferences.h | 12 ++--- apps/probability/calculation_controller.cpp | 2 + apps/probability/law_curve_view.h | 2 +- apps/range_parameter_controller.cpp | 2 + apps/regression/calculation_controller.cpp | 2 + apps/regression/graph_controller.cpp | 2 + apps/regression/graph_view.h | 4 +- apps/regression/store_controller.cpp | 2 + apps/regression/store_controller.h | 2 +- apps/settings/sub_controller.cpp | 2 + apps/statistics/box_controller.cpp | 2 + apps/statistics/box_controller.h | 2 +- apps/statistics/box_view.h | 2 +- apps/statistics/calculation_controller.cpp | 2 + apps/statistics/histogram_controller.cpp | 2 + apps/statistics/histogram_controller.h | 2 +- .../histogram_parameter_controller.h | 1 - apps/statistics/histogram_view.h | 2 +- apps/store_controller.cpp | 2 + apps/text_field_delegate_app.cpp | 2 + apps/text_field_delegate_app.h | 2 +- apps/title_bar_view.cpp | 2 + apps/variable_box_controller.cpp | 2 + apps/variable_box_controller.h | 8 +-- apps/variable_box_leaf_cell.cpp | 2 + apps/variable_box_leaf_cell.h | 2 +- .../include/escher/even_odd_expression_cell.h | 2 +- escher/include/escher/expression_view.h | 4 +- escher/src/even_odd_expression_cell.cpp | 1 + escher/src/expression_view.cpp | 1 + poincare/include/poincare/absolute_value.h | 4 ++ poincare/include/poincare/addition.h | 4 ++ poincare/include/poincare/binary_operation.h | 4 ++ poincare/include/poincare/complex.h | 4 ++ poincare/include/poincare/context.h | 4 ++ poincare/include/poincare/cosine.h | 4 ++ poincare/include/poincare/derivative.h | 4 ++ poincare/include/poincare/expression.h | 4 ++ poincare/include/poincare/expression_layout.h | 4 ++ poincare/include/poincare/fraction.h | 4 ++ poincare/include/poincare/function.h | 4 ++ poincare/include/poincare/global_context.h | 4 ++ poincare/include/poincare/hyperbolic_cosine.h | 4 ++ poincare/include/poincare/hyperbolic_sine.h | 4 ++ .../include/poincare/hyperbolic_tangent.h | 4 ++ poincare/include/poincare/integer.h | 4 ++ poincare/include/poincare/integral.h | 4 ++ poincare/include/poincare/leaf_expression.h | 4 ++ poincare/include/poincare/list_data.h | 4 ++ poincare/include/poincare/logarithm.h | 4 ++ poincare/include/poincare/matrix.h | 4 ++ poincare/include/poincare/matrix_data.h | 4 ++ poincare/include/poincare/multiplication.h | 4 ++ .../include/poincare/naperian_logarithm.h | 4 ++ poincare/include/poincare/nth_root.h | 4 ++ poincare/include/poincare/opposite.h | 4 ++ poincare/include/poincare/parenthesis.h | 4 ++ poincare/include/poincare/power.h | 4 ++ poincare/include/poincare/product.h | 4 ++ poincare/include/poincare/sine.h | 4 ++ poincare/include/poincare/square_root.h | 4 ++ poincare/include/poincare/subtraction.h | 4 ++ poincare/include/poincare/sum.h | 4 ++ poincare/include/poincare/symbol.h | 4 ++ poincare/include/poincare/tangent.h | 4 ++ poincare/include/poincare/variable_context.h | 4 ++ poincare/src/absolute_value.cpp | 6 ++- poincare/src/addition.cpp | 4 ++ poincare/src/binary_operation.cpp | 5 ++ poincare/src/complex.cpp | 5 ++ poincare/src/cosine.cpp | 4 ++ poincare/src/derivative.cpp | 5 ++ poincare/src/expression.cpp | 6 ++- poincare/src/expression_lexer.l | 2 +- poincare/src/expression_parser.y | 52 +++++++++---------- poincare/src/fraction.cpp | 4 ++ poincare/src/function.cpp | 4 ++ poincare/src/global_context.cpp | 4 ++ poincare/src/hyperbolic_cosine.cpp | 4 ++ poincare/src/hyperbolic_sine.cpp | 4 ++ poincare/src/hyperbolic_tangent.cpp | 4 ++ poincare/src/integer.cpp | 4 ++ poincare/src/integral.cpp | 4 ++ poincare/src/layout/absolute_value_layout.cpp | 4 ++ poincare/src/layout/absolute_value_layout.h | 4 ++ .../src/layout/baseline_relative_layout.cpp | 5 ++ .../src/layout/baseline_relative_layout.h | 4 ++ poincare/src/layout/expression_layout.cpp | 4 ++ poincare/src/layout/fraction_layout.cpp | 4 ++ poincare/src/layout/fraction_layout.h | 4 ++ poincare/src/layout/horizontal_layout.cpp | 4 ++ poincare/src/layout/horizontal_layout.h | 4 ++ poincare/src/layout/integral_layout.cpp | 4 ++ poincare/src/layout/integral_layout.h | 4 ++ poincare/src/layout/matrix_layout.cpp | 4 ++ poincare/src/layout/matrix_layout.h | 4 ++ poincare/src/layout/nth_root_layout.cpp | 5 ++ poincare/src/layout/nth_root_layout.h | 4 ++ poincare/src/layout/parenthesis_layout.cpp | 4 ++ poincare/src/layout/parenthesis_layout.h | 4 ++ poincare/src/layout/product_layout.cpp | 4 ++ poincare/src/layout/product_layout.h | 4 ++ poincare/src/layout/sequence_layout.cpp | 4 ++ poincare/src/layout/sequence_layout.h | 4 ++ poincare/src/layout/string_layout.cpp | 4 ++ poincare/src/layout/string_layout.h | 4 ++ poincare/src/layout/sum_layout.cpp | 4 ++ poincare/src/layout/sum_layout.h | 4 ++ poincare/src/leaf_expression.cpp | 4 ++ poincare/src/list_data.cpp | 4 ++ poincare/src/logarithm.cpp | 4 ++ poincare/src/matrix.cpp | 4 ++ poincare/src/matrix_data.cpp | 4 +- poincare/src/multiplication.cpp | 4 ++ poincare/src/naperian_logarithm.cpp | 4 ++ poincare/src/nth_root.cpp | 6 ++- poincare/src/opposite.cpp | 4 ++ poincare/src/parenthesis.cpp | 4 ++ poincare/src/power.cpp | 4 ++ poincare/src/product.cpp | 4 ++ poincare/src/simplify/expression_builder.cpp | 4 ++ poincare/src/simplify/expression_builder.h | 4 ++ poincare/src/simplify/expression_match.cpp | 4 ++ poincare/src/simplify/expression_match.h | 4 ++ poincare/src/simplify/expression_selector.cpp | 4 ++ poincare/src/simplify/expression_selector.h | 4 ++ poincare/src/simplify/rules.h | 4 ++ .../simplify/rules_generation/rules_parser.y | 6 ++- poincare/src/simplify/simplification.cpp | 4 ++ poincare/src/simplify/simplification.h | 4 ++ .../src/simplify/simplification_generator.cpp | 4 ++ .../src/simplify/simplification_generator.h | 4 ++ poincare/src/sine.cpp | 4 ++ poincare/src/square_root.cpp | 4 ++ poincare/src/subtraction.cpp | 4 ++ poincare/src/sum.cpp | 4 ++ poincare/src/symbol.cpp | 4 ++ poincare/src/tangent.cpp | 4 ++ poincare/src/variable_context.cpp | 5 +- poincare/test/addition.cpp | 2 + poincare/test/complex.cpp | 2 + poincare/test/fraction.cpp | 2 + poincare/test/integer.cpp | 2 + poincare/test/matrix.cpp | 2 + poincare/test/parser.cpp | 2 + poincare/test/power.cpp | 2 + poincare/test/product.cpp | 2 + poincare/test/simplify_addition.cpp | 2 + poincare/test/simplify_product.cpp | 2 + poincare/test/simplify_utils.cpp | 2 + poincare/test/subtraction.cpp | 2 + poincare/test/trigo.cpp | 2 + 185 files changed, 611 insertions(+), 99 deletions(-) diff --git a/apps/apps_container.cpp b/apps/apps_container.cpp index 8a6f9b619..f428de0c5 100644 --- a/apps/apps_container.cpp +++ b/apps/apps_container.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +using namespace Poincare; + AppsContainer::AppsContainer() : Container(), m_window(AppsWindow()), diff --git a/apps/apps_container.h b/apps/apps_container.h index c9c8801b1..d7a5845a3 100644 --- a/apps/apps_container.h +++ b/apps/apps_container.h @@ -24,7 +24,7 @@ public: int numberOfApps(); App * appAtIndex(int index); - Context * globalContext(); + Poincare::Context * globalContext(); Preferences * preferences(); ToolboxController * toolboxController(); VariableBoxController * variableBoxController(); @@ -45,7 +45,7 @@ private: #if USE_PIC_VIEW_APP PicViewApp m_picViewApp; #endif - GlobalContext m_globalContext; + Poincare::GlobalContext m_globalContext; Preferences m_preferences; ToolboxController m_toolboxController; VariableBoxController m_variableBoxController; diff --git a/apps/calculation/app.cpp b/apps/calculation/app.cpp index aa703240b..b77cb83db 100644 --- a/apps/calculation/app.cpp +++ b/apps/calculation/app.cpp @@ -1,5 +1,7 @@ #include "app.h" #include "calculation_icon.h" +using namespace Poincare; + namespace Calculation { diff --git a/apps/calculation/app.h b/apps/calculation/app.h index d16b11d57..3f93f11f8 100644 --- a/apps/calculation/app.h +++ b/apps/calculation/app.h @@ -11,8 +11,8 @@ namespace Calculation { class App : public TextFieldDelegateApp { public: - App(Container * container, Context * context); - Context * localContext() override; + App(Container * container, Poincare::Context * context); + Poincare::Context * localContext() override; private: LocalContext m_localContext; CalculationStore m_calculationStore; diff --git a/apps/calculation/calculation.cpp b/apps/calculation/calculation.cpp index b8d9c7e41..44dcf428f 100644 --- a/apps/calculation/calculation.cpp +++ b/apps/calculation/calculation.cpp @@ -1,5 +1,6 @@ #include "calculation.h" #include +using namespace Poincare; namespace Calculation { diff --git a/apps/calculation/calculation.h b/apps/calculation/calculation.h index 477e16fad..64accad52 100644 --- a/apps/calculation/calculation.h +++ b/apps/calculation/calculation.h @@ -18,19 +18,19 @@ public: /* c.reset() is the equivalent of c = Calculation() without copy assingment. */ void reset(); const char * text(); - Expression * input(); - ExpressionLayout * inputLayout(); - Expression * output(); - ExpressionLayout * outputLayout(); - void setContent(const char * c, Context * context, Preferences * preferences); + Poincare::Expression * input(); + Poincare::ExpressionLayout * inputLayout(); + Poincare::Expression * output(); + Poincare::ExpressionLayout * outputLayout(); + void setContent(const char * c, Poincare::Context * context, Preferences * preferences); bool isEmpty(); constexpr static int k_maximalExpressionTextLength = 255; private: char m_text[k_maximalExpressionTextLength]; - Expression * m_input; - ExpressionLayout * m_inputLayout; - Expression * m_output; - ExpressionLayout * m_outputLayout; + Poincare::Expression * m_input; + Poincare::ExpressionLayout * m_inputLayout; + Poincare::Expression * m_output; + Poincare::ExpressionLayout * m_outputLayout; }; } diff --git a/apps/calculation/calculation_store.cpp b/apps/calculation/calculation_store.cpp index af8995875..de109fe3a 100644 --- a/apps/calculation/calculation_store.cpp +++ b/apps/calculation/calculation_store.cpp @@ -1,5 +1,6 @@ #include "calculation_store.h" #include +using namespace Poincare; namespace Calculation { diff --git a/apps/calculation/calculation_store.h b/apps/calculation/calculation_store.h index 0008b6761..ecff3e2c2 100644 --- a/apps/calculation/calculation_store.h +++ b/apps/calculation/calculation_store.h @@ -12,7 +12,7 @@ class CalculationStore { public: CalculationStore(); Calculation * calculationAtIndex(int i); - Calculation * push(const char * text, Context * context, Preferences * preferences); + Calculation * push(const char * text, Poincare::Context * context, Preferences * preferences); void deleteCalculationAtIndex(int i); void deleteAll(); int numberOfCalculations(); diff --git a/apps/calculation/history_controller.h b/apps/calculation/history_controller.h index 42c836e46..2104d050b 100644 --- a/apps/calculation/history_controller.h +++ b/apps/calculation/history_controller.h @@ -18,7 +18,6 @@ public: View * view() override; const char * title() const override; bool handleEvent(Ion::Events::Event event) override; - void setFunction(Function * function); void didBecomeFirstResponder() override; void reload(); int numberOfRows() override; diff --git a/apps/calculation/local_context.cpp b/apps/calculation/local_context.cpp index d84e4de89..1b4a363c7 100644 --- a/apps/calculation/local_context.cpp +++ b/apps/calculation/local_context.cpp @@ -1,5 +1,6 @@ #include "local_context.h" #include +using namespace Poincare; namespace Calculation { diff --git a/apps/calculation/local_context.h b/apps/calculation/local_context.h index 98521bcd5..53e974da9 100644 --- a/apps/calculation/local_context.h +++ b/apps/calculation/local_context.h @@ -6,15 +6,15 @@ namespace Calculation { -class LocalContext : public Context { +class LocalContext : public Poincare::Context { public: - LocalContext(GlobalContext * parentContext, CalculationStore * calculationStore); - void setExpressionForSymbolName(Expression * expression, const Symbol * symbol) override; - const Expression * expressionForSymbol(const Symbol * symbol) override; + LocalContext(Poincare::GlobalContext * parentContext, CalculationStore * calculationStore); + void setExpressionForSymbolName(Poincare::Expression * expression, const Poincare::Symbol * symbol) override; + const Poincare::Expression * expressionForSymbol(const Poincare::Symbol * symbol) override; private: - Expression * ansValue(); + Poincare::Expression * ansValue(); CalculationStore * m_calculationStore; - GlobalContext * m_parentContext; + Poincare::GlobalContext * m_parentContext; }; } diff --git a/apps/calculation/scrollable_expression_view.cpp b/apps/calculation/scrollable_expression_view.cpp index d13930128..d6725b9e3 100644 --- a/apps/calculation/scrollable_expression_view.cpp +++ b/apps/calculation/scrollable_expression_view.cpp @@ -1,5 +1,6 @@ #include "scrollable_expression_view.h" #include +using namespace Poincare; namespace Calculation { diff --git a/apps/calculation/scrollable_expression_view.h b/apps/calculation/scrollable_expression_view.h index 149037471..b81f626dd 100644 --- a/apps/calculation/scrollable_expression_view.h +++ b/apps/calculation/scrollable_expression_view.h @@ -8,7 +8,7 @@ namespace Calculation { class ScrollableExpressionView : public ScrollView, public Responder { public: ScrollableExpressionView(Responder * parentResponder); - void setExpression(ExpressionLayout * expressionLayout); + void setExpression(Poincare::ExpressionLayout * expressionLayout); void layoutSubviews() override; void setBackgroundColor(KDColor backgroundColor); bool handleEvent(Ion::Events::Event event) override; diff --git a/apps/curve_view.cpp b/apps/curve_view.cpp index 84d972f7d..4cca19ac8 100644 --- a/apps/curve_view.cpp +++ b/apps/curve_view.cpp @@ -5,6 +5,8 @@ #include #include +using namespace Poincare; + CurveView::CurveView(CurveViewRange * curveViewRange, CurveViewCursor * curveViewCursor, BannerView * bannerView, View * cursorView) : View(), diff --git a/apps/editable_cell_table_view_controller.cpp b/apps/editable_cell_table_view_controller.cpp index f513826f1..37c22d4eb 100644 --- a/apps/editable_cell_table_view_controller.cpp +++ b/apps/editable_cell_table_view_controller.cpp @@ -4,6 +4,8 @@ #include "text_field_delegate_app.h" #include +using namespace Poincare; + EditableCellTableViewController::EditableCellTableViewController(Responder * parentResponder, KDCoordinate topMargin, KDCoordinate rightMargin, KDCoordinate bottomMargin, KDCoordinate leftMargin) : ViewController(parentResponder), diff --git a/apps/editable_cell_table_view_controller.h b/apps/editable_cell_table_view_controller.h index ebd6e7e49..5ff75009c 100644 --- a/apps/editable_cell_table_view_controller.h +++ b/apps/editable_cell_table_view_controller.h @@ -15,7 +15,7 @@ public: void tableViewDidChangeSelection(SelectableTableView * t, int previousSelectedCellX, int previousSelectedCellY) override; int numberOfRows() override; - void willDisplayCellAtLocationWithDisplayMode(TableViewCell * cell, int i, int j, Expression::DisplayMode displayMode); + void willDisplayCellAtLocationWithDisplayMode(TableViewCell * cell, int i, int j, Poincare::Expression::DisplayMode displayMode); KDCoordinate rowHeight(int j) override; KDCoordinate cumulatedHeightFromIndex(int j) override; int indexFromCumulatedHeight(KDCoordinate offsetY) override; diff --git a/apps/expression_text_field_delegate.cpp b/apps/expression_text_field_delegate.cpp index ad0bf4e8a..cee3997c6 100644 --- a/apps/expression_text_field_delegate.cpp +++ b/apps/expression_text_field_delegate.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + const char * ExpressionTextFieldDelegate::XNT() { return "x"; } diff --git a/apps/expression_text_field_delegate.h b/apps/expression_text_field_delegate.h index fc86f299f..44064d1ac 100644 --- a/apps/expression_text_field_delegate.h +++ b/apps/expression_text_field_delegate.h @@ -6,7 +6,7 @@ class ExpressionTextFieldDelegate : public TextFieldDelegate { public: - virtual Context * localContext() = 0; + virtual Poincare::Context * localContext() = 0; virtual const char * XNT(); bool textFieldDidReceiveEvent(TextField * textField, Ion::Events::Event event) override; private: diff --git a/apps/float_parameter_controller.cpp b/apps/float_parameter_controller.cpp index a91f53ba1..a43767f61 100644 --- a/apps/float_parameter_controller.cpp +++ b/apps/float_parameter_controller.cpp @@ -4,6 +4,8 @@ #include "text_field_delegate_app.h" #include +using namespace Poincare; + FloatParameterController::FloatParameterController(Responder * parentResponder) : ViewController(parentResponder), m_selectableTableView(SelectableTableView(this, this, Metric::TopMargin, Metric::RightMargin, diff --git a/apps/graph/app.cpp b/apps/graph/app.cpp index be898f627..0285ebff5 100644 --- a/apps/graph/app.cpp +++ b/apps/graph/app.cpp @@ -1,5 +1,6 @@ #include "app.h" #include "graph_icon.h" +using namespace Poincare; namespace Graph { diff --git a/apps/graph/app.h b/apps/graph/app.h index 6b17e2068..82bb18427 100644 --- a/apps/graph/app.h +++ b/apps/graph/app.h @@ -13,12 +13,12 @@ namespace Graph { class App : public TextFieldDelegateApp { public: - App(Container * container, Context * context); + App(Container * container, Poincare::Context * context); InputViewController * inputViewController(); - Context * localContext() override; + Poincare::Context * localContext() override; private: FunctionStore m_functionStore; - VariableContext m_xContext; + Poincare::VariableContext m_xContext; ListController m_listController; HeaderViewController m_listHeader; StackViewController m_listStackViewController; diff --git a/apps/graph/function.cpp b/apps/graph/function.cpp index 094c995d8..3fdc267a6 100644 --- a/apps/graph/function.cpp +++ b/apps/graph/function.cpp @@ -2,6 +2,8 @@ #include #include +using namespace Poincare; + namespace Graph { Function::Function(const char * text, KDColor color) : diff --git a/apps/graph/function.h b/apps/graph/function.h index ecadd06e2..54bc086e7 100644 --- a/apps/graph/function.h +++ b/apps/graph/function.h @@ -15,23 +15,23 @@ public: const char * text(); const char * name(); KDColor color() const { return m_color; } - Expression * expression(); - ExpressionLayout * layout(); + Poincare::Expression * expression(); + Poincare::ExpressionLayout * layout(); bool isActive(); void setActive(bool active); bool displayDerivative(); void setDisplayDerivative(bool display); void setContent(const char * c); void setColor(KDColor m_color); - float evaluateAtAbscissa(float x, Context * context, Expression::AngleUnit angleUnit) const; - float approximateDerivative(float x, Context * context, Expression::AngleUnit angleUnit) const; + float evaluateAtAbscissa(float x, Poincare::Context * context, Poincare::Expression::AngleUnit angleUnit) const; + float approximateDerivative(float x, Poincare::Context * context, Poincare::Expression::AngleUnit angleUnit) const; private: constexpr static int k_bodyLength = 255; char m_text[k_bodyLength]; const char * m_name; KDColor m_color; - Expression * m_expression; - ExpressionLayout * m_layout; + Poincare::Expression * m_expression; + Poincare::ExpressionLayout * m_layout; bool m_active; bool m_displayDerivative; }; diff --git a/apps/graph/graph/graph_controller.cpp b/apps/graph/graph/graph_controller.cpp index dd2070906..b6b584e69 100644 --- a/apps/graph/graph/graph_controller.cpp +++ b/apps/graph/graph/graph_controller.cpp @@ -5,6 +5,8 @@ #include #include +using namespace Poincare; + namespace Graph { GraphController::GraphController(Responder * parentResponder, FunctionStore * functionStore, HeaderViewController * header) : diff --git a/apps/graph/graph/graph_view.cpp b/apps/graph/graph/graph_view.cpp index 79026708a..aba033ca5 100644 --- a/apps/graph/graph/graph_view.cpp +++ b/apps/graph/graph/graph_view.cpp @@ -2,6 +2,7 @@ #include #include #include +using namespace Poincare; namespace Graph { diff --git a/apps/graph/graph/graph_view.h b/apps/graph/graph/graph_view.h index 0f005796c..2b0d0158f 100644 --- a/apps/graph/graph/graph_view.h +++ b/apps/graph/graph/graph_view.h @@ -15,16 +15,16 @@ public: GraphView(FunctionStore * functionStore, InteractiveCurveViewRange * graphRange, CurveViewCursor * cursor, ::BannerView * bannerView, View * cursorView); void drawRect(KDContext * ctx, KDRect rect) const override; - void setContext(Context * context); + void setContext(Poincare::Context * context); void setPreferences(Preferences * preferences); - Context * context() const; + Poincare::Context * context() const; private: char * label(Axis axis, int index) const override; float evaluateModelWithParameter(Model * expression, float abscissa) const override; - char m_xLabels[k_maxNumberOfXLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; - char m_yLabels[k_maxNumberOfYLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_xLabels[k_maxNumberOfXLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_yLabels[k_maxNumberOfYLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; FunctionStore * m_functionStore; - Context * m_context; + Poincare::Context * m_context; Preferences * m_preferences; }; diff --git a/apps/graph/values/values_controller.cpp b/apps/graph/values/values_controller.cpp index 830399ff8..31e6c4ccb 100644 --- a/apps/graph/values/values_controller.cpp +++ b/apps/graph/values/values_controller.cpp @@ -4,6 +4,8 @@ #include "../app.h" #include +using namespace Poincare; + namespace Graph { ValuesController::ValuesController(Responder * parentResponder, FunctionStore * functionStore, HeaderViewController * header) : diff --git a/apps/graph/values/values_controller.h b/apps/graph/values/values_controller.h index 9464ce166..281d11ae2 100644 --- a/apps/graph/values/values_controller.h +++ b/apps/graph/values/values_controller.h @@ -73,7 +73,7 @@ private: FunctionParameterController m_functionParameterController; DerivativeParameterController m_derivativeParameterController; Button m_setIntervalButton; - Expression::DisplayMode m_displayModeVersion; + Poincare::Expression::DisplayMode m_displayModeVersion; }; } diff --git a/apps/interactive_curve_view_controller.cpp b/apps/interactive_curve_view_controller.cpp index 8939ef260..574165b1d 100644 --- a/apps/interactive_curve_view_controller.cpp +++ b/apps/interactive_curve_view_controller.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + InteractiveCurveViewController::InteractiveCurveViewController(Responder * parentResponder, HeaderViewController * header, InteractiveCurveViewRange * interactiveRange, CurveView * curveView) : ViewController(parentResponder), HeaderViewDelegate(header), diff --git a/apps/interactive_curve_view_controller.h b/apps/interactive_curve_view_controller.h index 57d003ec4..bf7a5b151 100644 --- a/apps/interactive_curve_view_controller.h +++ b/apps/interactive_curve_view_controller.h @@ -53,7 +53,7 @@ private: Button m_rangeButton; Button m_zoomButton; Button m_defaultInitialisationButton; - Expression::DisplayMode m_displayModeVersion; + Poincare::Expression::DisplayMode m_displayModeVersion; }; #endif diff --git a/apps/interactive_curve_view_range.cpp b/apps/interactive_curve_view_range.cpp index d61f9b3ed..9745294e4 100644 --- a/apps/interactive_curve_view_range.cpp +++ b/apps/interactive_curve_view_range.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Poincare; + InteractiveCurveViewRange::InteractiveCurveViewRange(CurveViewCursor * cursor, InteractiveCurveViewRangeDelegate * delegate) : MemoizedCurveViewRange(), m_yAuto(true), diff --git a/apps/interactive_curve_view_range.h b/apps/interactive_curve_view_range.h index 45059bd93..5d3df892e 100644 --- a/apps/interactive_curve_view_range.h +++ b/apps/interactive_curve_view_range.h @@ -24,7 +24,7 @@ public: void panWithVector(float x, float y); void roundAbscissa(); void normalize(); - void setTrigonometric(Expression::AngleUnit angleUnit); + void setTrigonometric(Poincare::Expression::AngleUnit angleUnit); virtual void setDefault(); void centerAxisAround(Axis axis, float position); void panToMakePointVisible(float x, float y, float topMarginRatio, float rightMarginRatio, float bottomMarginRation, float leftMarginRation); diff --git a/apps/preferences.cpp b/apps/preferences.cpp index efa68b331..20482edd2 100644 --- a/apps/preferences.cpp +++ b/apps/preferences.cpp @@ -1,5 +1,7 @@ #include "preferences.h" +using namespace Poincare; + Preferences::Preferences() : m_angleUnit(Expression::AngleUnit::Degree), m_displayMode(Expression::DisplayMode::Auto), diff --git a/apps/preferences.h b/apps/preferences.h index 819360559..443502f04 100644 --- a/apps/preferences.h +++ b/apps/preferences.h @@ -18,10 +18,10 @@ public: English = 1 }; Preferences(); - Expression::AngleUnit angleUnit() const; - void setAngleUnit(Expression::AngleUnit angleUnit); - Expression::DisplayMode displayMode() const; - void setDisplayMode(Expression::DisplayMode displayMode); + Poincare::Expression::AngleUnit angleUnit() const; + void setAngleUnit(Poincare::Expression::AngleUnit angleUnit); + Poincare::Expression::DisplayMode displayMode() const; + void setDisplayMode(Poincare::Expression::DisplayMode displayMode); NumberType numberType() const; void setNumberType(NumberType numberType); ComplexFormat complexFormat() const; @@ -29,8 +29,8 @@ public: Language language() const; void setLanguage(Language language); private: - Expression::AngleUnit m_angleUnit; - Expression::DisplayMode m_displayMode; + Poincare::Expression::AngleUnit m_angleUnit; + Poincare::Expression::DisplayMode m_displayMode; NumberType m_numberType; ComplexFormat m_complexFormat; Language m_language; diff --git a/apps/probability/calculation_controller.cpp b/apps/probability/calculation_controller.cpp index a4c63c4ed..0367da281 100644 --- a/apps/probability/calculation_controller.cpp +++ b/apps/probability/calculation_controller.cpp @@ -6,6 +6,8 @@ #include "calculation/finite_integral_calculation.h" #include +using namespace Poincare; + namespace Probability { CalculationController::ContentView::ContentView(Responder * parentResponder, CalculationController * calculationController, Calculation * calculation) : diff --git a/apps/probability/law_curve_view.h b/apps/probability/law_curve_view.h index 4a49e8f7c..c26862f34 100644 --- a/apps/probability/law_curve_view.h +++ b/apps/probability/law_curve_view.h @@ -19,7 +19,7 @@ public: protected: char * label(Axis axis, int index) const override; private: - char m_labels[k_maxNumberOfXLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_labels[k_maxNumberOfXLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; float evaluateModelWithParameter(Model * law, float abscissa) const override; Law * m_law; Calculation * m_calculation; diff --git a/apps/range_parameter_controller.cpp b/apps/range_parameter_controller.cpp index 1a967b0eb..31e54a137 100644 --- a/apps/range_parameter_controller.cpp +++ b/apps/range_parameter_controller.cpp @@ -2,6 +2,8 @@ #include "apps_container.h" #include +using namespace Poincare; + RangeParameterController::RangeParameterController(Responder * parentResponder, InteractiveCurveViewRange * interactiveRange) : FloatParameterController(parentResponder), m_interactiveRange(interactiveRange), diff --git a/apps/regression/calculation_controller.cpp b/apps/regression/calculation_controller.cpp index eea0e6298..6e2942845 100644 --- a/apps/regression/calculation_controller.cpp +++ b/apps/regression/calculation_controller.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Poincare; + namespace Regression { CalculationController::CalculationController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) : diff --git a/apps/regression/graph_controller.cpp b/apps/regression/graph_controller.cpp index 7f494550f..71785d103 100644 --- a/apps/regression/graph_controller.cpp +++ b/apps/regression/graph_controller.cpp @@ -1,6 +1,8 @@ #include "graph_controller.h" #include "../apps_container.h" +using namespace Poincare; + namespace Regression { GraphController::GraphController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) : diff --git a/apps/regression/graph_view.h b/apps/regression/graph_view.h index 132bf0c77..d62569ec2 100644 --- a/apps/regression/graph_view.h +++ b/apps/regression/graph_view.h @@ -16,8 +16,8 @@ private: char * label(Axis axis, int index) const override; float evaluateModelWithParameter(Model * curve, float t) const override; Store * m_store; - char m_xLabels[k_maxNumberOfXLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; - char m_yLabels[k_maxNumberOfYLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_xLabels[k_maxNumberOfXLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_yLabels[k_maxNumberOfYLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; }; } diff --git a/apps/regression/store_controller.cpp b/apps/regression/store_controller.cpp index ef1fc419d..c8742751e 100644 --- a/apps/regression/store_controller.cpp +++ b/apps/regression/store_controller.cpp @@ -6,6 +6,8 @@ #include "../../poincare/src/layout/string_layout.h" #include +using namespace Poincare; + namespace Regression { StoreController::StoreController(Responder * parentResponder, Store * store, HeaderViewController * header) : diff --git a/apps/regression/store_controller.h b/apps/regression/store_controller.h index 42248a19c..7171334a0 100644 --- a/apps/regression/store_controller.h +++ b/apps/regression/store_controller.h @@ -14,7 +14,7 @@ public: private: TableViewCell * titleCells(int index) override; EvenOddExpressionCell m_titleCells[k_numberOfTitleCells]; - ExpressionLayout * m_titleLayout[2]; + Poincare::ExpressionLayout * m_titleLayout[2]; }; } diff --git a/apps/settings/sub_controller.cpp b/apps/settings/sub_controller.cpp index 9fdb687c6..74ad687a6 100644 --- a/apps/settings/sub_controller.cpp +++ b/apps/settings/sub_controller.cpp @@ -2,6 +2,8 @@ #include "../apps_container.h" #include +using namespace Poincare; + namespace Settings { SubController::SubController(Responder * parentResponder, Preferences * preferences) : diff --git a/apps/statistics/box_controller.cpp b/apps/statistics/box_controller.cpp index bc9027ab2..346db09ca 100644 --- a/apps/statistics/box_controller.cpp +++ b/apps/statistics/box_controller.cpp @@ -2,6 +2,8 @@ #include "../apps_container.h" #include +using namespace Poincare; + namespace Statistics { BoxController::BoxController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) : diff --git a/apps/statistics/box_controller.h b/apps/statistics/box_controller.h index f5929a033..366f6eef3 100644 --- a/apps/statistics/box_controller.h +++ b/apps/statistics/box_controller.h @@ -24,7 +24,7 @@ private: BoxBannerView m_boxBannerView; BoxView m_view; Store * m_store; - Expression::DisplayMode m_displayModeVersion; + Poincare::Expression::DisplayMode m_displayModeVersion; }; } diff --git a/apps/statistics/box_view.h b/apps/statistics/box_view.h index dd6dae1d9..437171808 100644 --- a/apps/statistics/box_view.h +++ b/apps/statistics/box_view.h @@ -28,7 +28,7 @@ private: char * label(Axis axis, int index) const override; Store * m_store; BoxRange m_boxRange; - char m_labels[k_maxNumberOfXLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_labels[k_maxNumberOfXLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; Quantile m_selectedQuantile; }; diff --git a/apps/statistics/calculation_controller.cpp b/apps/statistics/calculation_controller.cpp index 7fa74cd2f..de56cc214 100644 --- a/apps/statistics/calculation_controller.cpp +++ b/apps/statistics/calculation_controller.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Poincare; + namespace Statistics { CalculationController::CalculationController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) : diff --git a/apps/statistics/histogram_controller.cpp b/apps/statistics/histogram_controller.cpp index f47429b91..52e618c68 100644 --- a/apps/statistics/histogram_controller.cpp +++ b/apps/statistics/histogram_controller.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Poincare; + namespace Statistics { HistogramController::HistogramController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) : diff --git a/apps/statistics/histogram_controller.h b/apps/statistics/histogram_controller.h index b4aa730a7..bcd657432 100644 --- a/apps/statistics/histogram_controller.h +++ b/apps/statistics/histogram_controller.h @@ -47,7 +47,7 @@ private: uint32_t m_rangeVersion; int m_selectedBarIndex; HistogramParameterController m_histogramParameterController; - Expression::DisplayMode m_displayModeVersion; + Poincare::Expression::DisplayMode m_displayModeVersion; }; } diff --git a/apps/statistics/histogram_parameter_controller.h b/apps/statistics/histogram_parameter_controller.h index be00d99dc..677e58554 100644 --- a/apps/statistics/histogram_parameter_controller.h +++ b/apps/statistics/histogram_parameter_controller.h @@ -14,7 +14,6 @@ public: int numberOfRows() override; TableViewCell * reusableCell(int index) override; int reusableCellCount() override; - void setFunction(Function * function); private: float parameterAtIndex(int index) override; void setParameterAtIndex(int parameterIndex, float f) override; diff --git a/apps/statistics/histogram_view.h b/apps/statistics/histogram_view.h index 55b178bf6..dbeb007a9 100644 --- a/apps/statistics/histogram_view.h +++ b/apps/statistics/histogram_view.h @@ -18,7 +18,7 @@ private: char * label(Axis axis, int index) const override; float evaluateModelWithParameter(Model * curve, float t) const override; Store * m_store; - char m_labels[k_maxNumberOfXLabels][Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; + char m_labels[k_maxNumberOfXLabels][Poincare::Complex::bufferSizeForFloatsWithPrecision(Constant::ShortNumberOfSignificantDigits)]; float m_highlightedBarStart; float m_highlightedBarEnd; }; diff --git a/apps/store_controller.cpp b/apps/store_controller.cpp index 35762d13c..2745c1f32 100644 --- a/apps/store_controller.cpp +++ b/apps/store_controller.cpp @@ -3,6 +3,8 @@ #include "constant.h" #include +using namespace Poincare; + StoreController::StoreController(Responder * parentResponder, FloatPairStore * store, HeaderViewController * header) : EditableCellTableViewController(parentResponder, Metric::TopMargin, Metric::RightMargin, Metric::BottomMargin, Metric::LeftMargin), HeaderViewDelegate(header), diff --git a/apps/text_field_delegate_app.cpp b/apps/text_field_delegate_app.cpp index 64a645a02..e7e336558 100644 --- a/apps/text_field_delegate_app.cpp +++ b/apps/text_field_delegate_app.cpp @@ -1,6 +1,8 @@ #include "text_field_delegate_app.h" #include "apps_container.h" +using namespace Poincare; + TextFieldDelegateApp::TextFieldDelegateApp(Container * container, ViewController * rootViewController, const char * name, const char * upperName, const Image * icon) : ::App(container, rootViewController, name, upperName, icon), diff --git a/apps/text_field_delegate_app.h b/apps/text_field_delegate_app.h index fb15d292c..9b3788fc9 100644 --- a/apps/text_field_delegate_app.h +++ b/apps/text_field_delegate_app.h @@ -7,7 +7,7 @@ class TextFieldDelegateApp : public ::App, public ExpressionTextFieldDelegate { public: TextFieldDelegateApp(Container * container, ViewController * rootViewController, const char * name = nullptr, const char * upperName = nullptr, const Image * icon = nullptr); - virtual Context * localContext() override; + virtual Poincare::Context * localContext() override; }; #endif diff --git a/apps/title_bar_view.cpp b/apps/title_bar_view.cpp index 12ed6d2a6..4da3c7b7a 100644 --- a/apps/title_bar_view.cpp +++ b/apps/title_bar_view.cpp @@ -3,6 +3,8 @@ extern "C" { #include } +using namespace Poincare; + TitleBarView::TitleBarView() : View(), m_titleView(KDText::FontSize::Small, nullptr, 0.5f, 0.5f, KDColorWhite, Palette::YellowDark), diff --git a/apps/variable_box_controller.cpp b/apps/variable_box_controller.cpp index d1ad3e35d..77d560f8a 100644 --- a/apps/variable_box_controller.cpp +++ b/apps/variable_box_controller.cpp @@ -2,6 +2,8 @@ #include "constant.h" #include +using namespace Poincare; + /* ContentViewController */ VariableBoxController::ContentViewController::ContentViewController(Responder * parentResponder, Context * context) : diff --git a/apps/variable_box_controller.h b/apps/variable_box_controller.h index 74eba3f2e..2a5213bd8 100644 --- a/apps/variable_box_controller.h +++ b/apps/variable_box_controller.h @@ -7,13 +7,13 @@ class VariableBoxController : public StackViewController { public: - VariableBoxController(Context * context); + VariableBoxController(Poincare::Context * context); void didBecomeFirstResponder() override; void setTextFieldCaller(TextField * textField); private: class ContentViewController : public ViewController, public ListViewDataSource { public: - ContentViewController(Responder * parentResponder, Context * context); + ContentViewController(Responder * parentResponder, Poincare::Context * context); View * view() override; const char * title() const override; void didBecomeFirstResponder() override; @@ -41,9 +41,9 @@ private: Page pageAtIndex(int index); void putLabelAtIndexInBuffer(int index, char * buffer); const char * nodeLabelAtIndex(int index); - const Expression * expressionForIndex(int index); + const Poincare::Expression * expressionForIndex(int index); - Context * m_context; + Poincare::Context * m_context; TextField * m_textFieldCaller; int m_firstSelectedRow; int m_previousSelectedRow; diff --git a/apps/variable_box_leaf_cell.cpp b/apps/variable_box_leaf_cell.cpp index 9e511b298..4874e772e 100644 --- a/apps/variable_box_leaf_cell.cpp +++ b/apps/variable_box_leaf_cell.cpp @@ -1,6 +1,8 @@ #include "variable_box_leaf_cell.h" #include +using namespace Poincare; + VariableBoxLeafCell::VariableBoxLeafCell() : TableViewCell(), m_labelView(BufferTextView(KDText::FontSize::Small, 0, 0.5, KDColorBlack, KDColorWhite)), diff --git a/apps/variable_box_leaf_cell.h b/apps/variable_box_leaf_cell.h index 88c9b790e..4335e827e 100644 --- a/apps/variable_box_leaf_cell.h +++ b/apps/variable_box_leaf_cell.h @@ -10,7 +10,7 @@ public: void reloadCell() override; void setLabel(const char * text); void setSubtitle(const char * text); - void setExpression(ExpressionLayout * expressionLayout); + void setExpression(Poincare::ExpressionLayout * expressionLayout); void drawRect(KDContext * ctx, KDRect rect) const override; private: int numberOfSubviews() const override; diff --git a/escher/include/escher/even_odd_expression_cell.h b/escher/include/escher/even_odd_expression_cell.h index ea5c3470a..9b8c2620c 100644 --- a/escher/include/escher/even_odd_expression_cell.h +++ b/escher/include/escher/even_odd_expression_cell.h @@ -9,7 +9,7 @@ public: EvenOddExpressionCell(float horizontalAlignment = 0.0f, float verticalAlignment = 0.5f, KDColor textColor = KDColorBlack, KDColor backgroundColor = KDColorWhite); void reloadCell() override; - void setExpression(ExpressionLayout * expressionLayout); + void setExpression(Poincare::ExpressionLayout * expressionLayout); void setBackgroundColor(KDColor backgroundColor); void setTextColor(KDColor textColor); KDSize minimalSizeForOptimalDisplay() override; diff --git a/escher/include/escher/expression_view.h b/escher/include/escher/expression_view.h index 91d01f167..44c520676 100644 --- a/escher/include/escher/expression_view.h +++ b/escher/include/escher/expression_view.h @@ -15,14 +15,14 @@ class ExpressionView : public View { public: ExpressionView(float horizontalAlignment = 0.0f, float verticalAlignment = 0.5f, KDColor textColor = KDColorBlack, KDColor backgroundColor = KDColorWhite); - void setExpression(ExpressionLayout * expressionLayout); + void setExpression(Poincare::ExpressionLayout * expressionLayout); void drawRect(KDContext * ctx, KDRect rect) const override; void setBackgroundColor(KDColor backgroundColor); void setTextColor(KDColor textColor); void setAlignment(float horizontalAlignment, float verticalAlignment); KDSize minimalSizeForOptimalDisplay() override; private: - ExpressionLayout * m_expressionLayout; + Poincare::ExpressionLayout * m_expressionLayout; float m_horizontalAlignment; float m_verticalAlignment; KDColor m_textColor; diff --git a/escher/src/even_odd_expression_cell.cpp b/escher/src/even_odd_expression_cell.cpp index da3e3fa74..479d6e4a4 100644 --- a/escher/src/even_odd_expression_cell.cpp +++ b/escher/src/even_odd_expression_cell.cpp @@ -1,5 +1,6 @@ #include #include +using namespace Poincare; EvenOddExpressionCell::EvenOddExpressionCell(float horizontalAlignment, float verticalAlignment, KDColor textColor, KDColor backgroundColor) : diff --git a/escher/src/expression_view.cpp b/escher/src/expression_view.cpp index ed66ff59a..58bf3ef20 100644 --- a/escher/src/expression_view.cpp +++ b/escher/src/expression_view.cpp @@ -1,4 +1,5 @@ #include +using namespace Poincare; ExpressionView::ExpressionView(float horizontalAlignment, float verticalAlignment, KDColor textColor, KDColor backgroundColor) : diff --git a/poincare/include/poincare/absolute_value.h b/poincare/include/poincare/absolute_value.h index 1defbf314..68d7fe4ce 100644 --- a/poincare/include/poincare/absolute_value.h +++ b/poincare/include/poincare/absolute_value.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class AbsoluteValue : public Function { public: AbsoluteValue(); @@ -14,4 +16,6 @@ public: ExpressionLayout * createLayout(DisplayMode displayMode = DisplayMode::Auto) const override; }; +} + #endif diff --git a/poincare/include/poincare/addition.h b/poincare/include/poincare/addition.h index ffc39358e..450fc9261 100644 --- a/poincare/include/poincare/addition.h +++ b/poincare/include/poincare/addition.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Addition : public BinaryOperation { using BinaryOperation::BinaryOperation; public: @@ -16,4 +18,6 @@ private: Expression * evaluateOnComplex(Complex * c, Complex * d, Context& context, AngleUnit angleUnit) const override; }; +} + #endif diff --git a/poincare/include/poincare/binary_operation.h b/poincare/include/poincare/binary_operation.h index 7a222a81d..cb6124afb 100644 --- a/poincare/include/poincare/binary_operation.h +++ b/poincare/include/poincare/binary_operation.h @@ -5,6 +5,8 @@ #include #include +namespace Poincare { + class BinaryOperation : public Expression { public: BinaryOperation(Expression ** operands, bool cloneOperands = true); @@ -21,4 +23,6 @@ protected: virtual Expression * evaluateOnMatrices(Matrix * m, Matrix * n, Context& context, AngleUnit angleUnit) const; }; +} + #endif diff --git a/poincare/include/poincare/complex.h b/poincare/include/poincare/complex.h index 4aaa63c06..69e72e394 100644 --- a/poincare/include/poincare/complex.h +++ b/poincare/include/poincare/complex.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Complex : public LeafExpression { public: Complex(float a, float b = 0.0f, bool polar = false); @@ -63,4 +65,6 @@ private: int m_numberOfSignificantDigits; }; +} + #endif diff --git a/poincare/include/poincare/context.h b/poincare/include/poincare/context.h index 9c196df8b..c098d64a6 100644 --- a/poincare/include/poincare/context.h +++ b/poincare/include/poincare/context.h @@ -4,10 +4,14 @@ #include #include +namespace Poincare { + class Context { public: virtual const Expression * expressionForSymbol(const Symbol * symbol) = 0; virtual void setExpressionForSymbolName(Expression * expression, const Symbol * symbol) = 0; }; +} + #endif diff --git a/poincare/include/poincare/cosine.h b/poincare/include/poincare/cosine.h index f781985bc..f3bbf21fe 100644 --- a/poincare/include/poincare/cosine.h +++ b/poincare/include/poincare/cosine.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Cosine : public Function { public: Cosine(); @@ -13,4 +15,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/derivative.h b/poincare/include/poincare/derivative.h index 6d13704e6..c0f2dbdcb 100644 --- a/poincare/include/poincare/derivative.h +++ b/poincare/include/poincare/derivative.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class Derivative : public Function { public: Derivative(); @@ -19,4 +21,6 @@ private: constexpr static float k_rateStepSize = 1.4f; }; +} + #endif diff --git a/poincare/include/poincare/expression.h b/poincare/include/poincare/expression.h index 517538fb1..5a407074f 100644 --- a/poincare/include/poincare/expression.h +++ b/poincare/include/poincare/expression.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class Context; class Expression { @@ -98,4 +100,6 @@ class Expression { bool * operandMatched, int leftToMatch) const; }; +} + #endif diff --git a/poincare/include/poincare/expression_layout.h b/poincare/include/poincare/expression_layout.h index 73b72e733..857cb0a5c 100644 --- a/poincare/include/poincare/expression_layout.h +++ b/poincare/include/poincare/expression_layout.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class ExpressionLayout { public: ExpressionLayout(); @@ -27,4 +29,6 @@ class ExpressionLayout { KDRect m_frame; }; +} + #endif diff --git a/poincare/include/poincare/fraction.h b/poincare/include/poincare/fraction.h index d7117b55a..388be7ce8 100644 --- a/poincare/include/poincare/fraction.h +++ b/poincare/include/poincare/fraction.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Fraction : public BinaryOperation { using BinaryOperation::BinaryOperation; public: @@ -17,4 +19,6 @@ private: Expression * evaluateOnMatrices(Matrix * m, Matrix * n, Context& context, AngleUnit angleUnit) const override; }; +} + #endif diff --git a/poincare/include/poincare/function.h b/poincare/include/poincare/function.h index 103512629..b62b7b83b 100644 --- a/poincare/include/poincare/function.h +++ b/poincare/include/poincare/function.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + /* The Function class represents the built-in math functions such as cos, sin, * tan, log, etc... */ @@ -24,4 +26,6 @@ protected: const char * m_name; }; +} + #endif diff --git a/poincare/include/poincare/global_context.h b/poincare/include/poincare/global_context.h index 57ee474e2..dcc2930ab 100644 --- a/poincare/include/poincare/global_context.h +++ b/poincare/include/poincare/global_context.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class Integer; /* The global context only stores symbols A-Z, L1-L9 and M1-M9 */ @@ -26,4 +28,6 @@ private: Complex m_e; }; +} + #endif diff --git a/poincare/include/poincare/hyperbolic_cosine.h b/poincare/include/poincare/hyperbolic_cosine.h index 740fec627..c51b5df3a 100644 --- a/poincare/include/poincare/hyperbolic_cosine.h +++ b/poincare/include/poincare/hyperbolic_cosine.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class HyperbolicCosine : public Function { public: HyperbolicCosine(); @@ -13,4 +15,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/hyperbolic_sine.h b/poincare/include/poincare/hyperbolic_sine.h index baabf0421..badb8d451 100644 --- a/poincare/include/poincare/hyperbolic_sine.h +++ b/poincare/include/poincare/hyperbolic_sine.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class HyperbolicSine : public Function { public: HyperbolicSine(); @@ -13,4 +15,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/hyperbolic_tangent.h b/poincare/include/poincare/hyperbolic_tangent.h index 6db771ed9..5643078fb 100644 --- a/poincare/include/poincare/hyperbolic_tangent.h +++ b/poincare/include/poincare/hyperbolic_tangent.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class HyperbolicTangent : public Function { public: HyperbolicTangent(); @@ -13,4 +15,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/integer.h b/poincare/include/poincare/integer.h index 12e640a58..86d6d65e0 100644 --- a/poincare/include/poincare/integer.h +++ b/poincare/include/poincare/integer.h @@ -8,6 +8,8 @@ typedef int32_t native_int_t; typedef uint32_t native_uint_t; typedef uint64_t double_native_uint_t; +namespace Poincare { + class Integer : public LeafExpression { public: Integer(native_int_t i); @@ -60,4 +62,6 @@ public: Integer m_remainder; }; +} + #endif diff --git a/poincare/include/poincare/integral.h b/poincare/include/poincare/integral.h index 100fa851c..762146924 100644 --- a/poincare/include/poincare/integral.h +++ b/poincare/include/poincare/integral.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class Integral : public Function { public: Integral(); @@ -28,4 +30,6 @@ private: float functionValueAtAbscissa(float x, VariableContext xcontext, AngleUnit angleUnit) const; }; +} + #endif diff --git a/poincare/include/poincare/leaf_expression.h b/poincare/include/poincare/leaf_expression.h index 1a73da6a0..95c1dcb56 100644 --- a/poincare/include/poincare/leaf_expression.h +++ b/poincare/include/poincare/leaf_expression.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class LeafExpression : public Expression { public: const Expression * operand(int i) const override; @@ -11,4 +13,6 @@ class LeafExpression : public Expression { int numberOfOperands, bool cloneOperands = true) const override; }; +} + #endif diff --git a/poincare/include/poincare/list_data.h b/poincare/include/poincare/list_data.h index b7fd60bdf..0cb5c47b6 100644 --- a/poincare/include/poincare/list_data.h +++ b/poincare/include/poincare/list_data.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class ListData { public: ListData(Expression * operand); @@ -15,4 +17,6 @@ class ListData { Expression ** m_operands; }; +} + #endif diff --git a/poincare/include/poincare/logarithm.h b/poincare/include/poincare/logarithm.h index e229361df..d4705b31e 100644 --- a/poincare/include/poincare/logarithm.h +++ b/poincare/include/poincare/logarithm.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Logarithm : public Function { public: Logarithm(); @@ -13,4 +15,6 @@ public: ExpressionLayout * createLayout(DisplayMode displayMode = DisplayMode::Auto) const override; }; +} + #endif diff --git a/poincare/include/poincare/matrix.h b/poincare/include/poincare/matrix.h index 7cf246fa8..ae6df1039 100644 --- a/poincare/include/poincare/matrix.h +++ b/poincare/include/poincare/matrix.h @@ -5,6 +5,8 @@ #include #include +namespace Poincare { + class Matrix : public Expression { public: Matrix(MatrixData * matrixData); @@ -29,4 +31,6 @@ class Matrix : public Expression { static Complex * defaultExpression(); }; +} + #endif diff --git a/poincare/include/poincare/matrix_data.h b/poincare/include/poincare/matrix_data.h index 48fc486c3..57e2c5a73 100644 --- a/poincare/include/poincare/matrix_data.h +++ b/poincare/include/poincare/matrix_data.h @@ -5,6 +5,8 @@ #include #include +namespace Poincare { + class MatrixData { public: MatrixData(ListData * listData); @@ -21,4 +23,6 @@ class MatrixData { static Complex * defaultExpression(); }; +} + #endif diff --git a/poincare/include/poincare/multiplication.h b/poincare/include/poincare/multiplication.h index aede1a5a9..d37d1bf8c 100644 --- a/poincare/include/poincare/multiplication.h +++ b/poincare/include/poincare/multiplication.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Multiplication : public BinaryOperation { using BinaryOperation::BinaryOperation; public: @@ -16,4 +18,6 @@ private: Expression * evaluateOnMatrices(Matrix * m, Matrix * n, Context& context, AngleUnit angleUnit) const override; }; +} + #endif diff --git a/poincare/include/poincare/naperian_logarithm.h b/poincare/include/poincare/naperian_logarithm.h index 35c52e17a..4008c0d59 100644 --- a/poincare/include/poincare/naperian_logarithm.h +++ b/poincare/include/poincare/naperian_logarithm.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class NaperianLogarithm : public Function { public: NaperianLogarithm(); @@ -12,4 +14,6 @@ public: int numberOfOperands, bool cloneOperands = true) const override; }; +} + #endif diff --git a/poincare/include/poincare/nth_root.h b/poincare/include/poincare/nth_root.h index 6f33c6bdc..46ac87d95 100644 --- a/poincare/include/poincare/nth_root.h +++ b/poincare/include/poincare/nth_root.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class NthRoot : public Function { public: NthRoot(); @@ -14,4 +16,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/opposite.h b/poincare/include/poincare/opposite.h index abd30c10f..9d01cff14 100644 --- a/poincare/include/poincare/opposite.h +++ b/poincare/include/poincare/opposite.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class Opposite : public Expression { public: Opposite(Expression * operand, bool cloneOperands = true); @@ -22,4 +24,6 @@ class Opposite : public Expression { Expression * evaluateOnMatrix(Matrix * m, Context& context, AngleUnit angleUnit) const; }; +} + #endif diff --git a/poincare/include/poincare/parenthesis.h b/poincare/include/poincare/parenthesis.h index b6bc56089..06321a814 100644 --- a/poincare/include/poincare/parenthesis.h +++ b/poincare/include/poincare/parenthesis.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Parenthesis : public Expression { public: Parenthesis(Expression * operand, bool cloneOperands = true); @@ -20,4 +22,6 @@ class Parenthesis : public Expression { Expression * m_operand; }; +} + #endif diff --git a/poincare/include/poincare/power.h b/poincare/include/poincare/power.h index 96cb1088f..7ea3c60e7 100644 --- a/poincare/include/poincare/power.h +++ b/poincare/include/poincare/power.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Power : public BinaryOperation { using BinaryOperation::BinaryOperation; public: @@ -18,4 +20,6 @@ private: Expression * evaluateOnMatrices(Matrix * m, Matrix * n, Context& context, AngleUnit angleUnit) const override; }; +} + #endif diff --git a/poincare/include/poincare/product.h b/poincare/include/poincare/product.h index dc9945af3..5a6351c9e 100644 --- a/poincare/include/poincare/product.h +++ b/poincare/include/poincare/product.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Product : public Function { public: Product(); @@ -14,4 +16,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/sine.h b/poincare/include/poincare/sine.h index 9801c68c6..86d03e88f 100644 --- a/poincare/include/poincare/sine.h +++ b/poincare/include/poincare/sine.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Sine : public Function { public: Sine(); @@ -13,4 +15,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/square_root.h b/poincare/include/poincare/square_root.h index db94537c9..f0e79b70d 100644 --- a/poincare/include/poincare/square_root.h +++ b/poincare/include/poincare/square_root.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class SquareRoot : public Function { public: SquareRoot(); @@ -14,4 +16,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/subtraction.h b/poincare/include/poincare/subtraction.h index d2564475d..5ccb33a99 100644 --- a/poincare/include/poincare/subtraction.h +++ b/poincare/include/poincare/subtraction.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Subtraction : public BinaryOperation { using BinaryOperation::BinaryOperation; public: @@ -16,4 +18,6 @@ private: Expression * evaluateOnComplexAndMatrix(Complex * c, Matrix * m, Context& context, AngleUnit angleUnit) const override; }; +} + #endif diff --git a/poincare/include/poincare/sum.h b/poincare/include/poincare/sum.h index f8c78c9ab..d69afc6f5 100644 --- a/poincare/include/poincare/sum.h +++ b/poincare/include/poincare/sum.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Sum : public Function { public: Sum(); @@ -14,4 +16,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/symbol.h b/poincare/include/poincare/symbol.h index 0426b347d..e52dc3390 100644 --- a/poincare/include/poincare/symbol.h +++ b/poincare/include/poincare/symbol.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Symbol : public LeafExpression { public: enum SpecialSymbols : char { @@ -20,4 +22,6 @@ public: const char m_name; }; +} + #endif diff --git a/poincare/include/poincare/tangent.h b/poincare/include/poincare/tangent.h index 8ce89d3c2..22c556fec 100644 --- a/poincare/include/poincare/tangent.h +++ b/poincare/include/poincare/tangent.h @@ -3,6 +3,8 @@ #include +namespace Poincare { + class Tangent : public Function { public: Tangent(); @@ -13,4 +15,6 @@ public: Expression * evaluate(Context& context, AngleUnit angleUnit = AngleUnit::Radian) const override; }; +} + #endif diff --git a/poincare/include/poincare/variable_context.h b/poincare/include/poincare/variable_context.h index 5d85746d0..de6c9d47c 100644 --- a/poincare/include/poincare/variable_context.h +++ b/poincare/include/poincare/variable_context.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class VariableContext : public Context { public: VariableContext(char name, Context * parentContext = nullptr); @@ -15,4 +17,6 @@ private: Context * m_parentContext; }; +} + #endif \ No newline at end of file diff --git a/poincare/src/absolute_value.cpp b/poincare/src/absolute_value.cpp index 49a443f7f..c85f9147b 100644 --- a/poincare/src/absolute_value.cpp +++ b/poincare/src/absolute_value.cpp @@ -7,6 +7,8 @@ extern "C" { #include } +namespace Poincare { + AbsoluteValue::AbsoluteValue() : Function("abs") { @@ -53,4 +55,6 @@ Expression * AbsoluteValue::evaluate(Context& context, AngleUnit angleUnit) cons ExpressionLayout * AbsoluteValue::createLayout(DisplayMode displayMode) const { return new AbsoluteValueLayout(m_args[0]->createLayout(displayMode)); -} \ No newline at end of file +} + +} diff --git a/poincare/src/addition.cpp b/poincare/src/addition.cpp index e129b2717..53f34be4e 100644 --- a/poincare/src/addition.cpp +++ b/poincare/src/addition.cpp @@ -7,6 +7,8 @@ extern "C" { #include "layout/string_layout.h" #include "layout/parenthesis_layout.h" +namespace Poincare { + Expression::Type Addition::type() const { return Type::Addition; } @@ -35,3 +37,5 @@ bool Addition::isCommutative() const { Expression * Addition::evaluateOnComplex(Complex * c, Complex * d, Context& context, AngleUnit angleUnit) const { return new Complex(c->a()+ d->a(), c->b() + d->b()); } + +} diff --git a/poincare/src/binary_operation.cpp b/poincare/src/binary_operation.cpp index 998af4004..61ca6b25b 100644 --- a/poincare/src/binary_operation.cpp +++ b/poincare/src/binary_operation.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +namespace Poincare { + BinaryOperation::BinaryOperation(Expression ** operands, bool cloneOperands) { assert(operands != nullptr); assert(operands[0] != nullptr); @@ -102,3 +104,6 @@ Expression * BinaryOperation::evaluateOnMatrices(Matrix * m, Matrix * n, Context } return new Matrix(operands, m->numberOfRows() * m->numberOfColumns(), m->numberOfColumns(), m->numberOfRows(), false); } + +} + diff --git a/poincare/src/complex.cpp b/poincare/src/complex.cpp index 83e6ac992..e72111b64 100644 --- a/poincare/src/complex.cpp +++ b/poincare/src/complex.cpp @@ -9,6 +9,8 @@ extern "C" { #include "layout/string_layout.h" #include +namespace Poincare { + Complex::Complex(float a, float b, bool polar) : m_a(a), m_b(b), @@ -276,3 +278,6 @@ void Complex::printBase10IntegerWithDecimalMarker(char * buffer, int bufferSize, dividend = quotien; } while (endChar >= startChar); } + +} + diff --git a/poincare/src/cosine.cpp b/poincare/src/cosine.cpp index 0c2933194..9e4f9dfa5 100644 --- a/poincare/src/cosine.cpp +++ b/poincare/src/cosine.cpp @@ -6,6 +6,8 @@ extern "C" { #include } +namespace Poincare { + Cosine::Cosine() : Function("cos") { @@ -47,3 +49,5 @@ Expression * Cosine::evaluate(Context& context, AngleUnit angleUnit) const { delete cosh; return resultEvaluation; } + +} diff --git a/poincare/src/derivative.cpp b/poincare/src/derivative.cpp index c6aee6e73..e8b717e6a 100644 --- a/poincare/src/derivative.cpp +++ b/poincare/src/derivative.cpp @@ -8,6 +8,8 @@ extern "C" { #include } +namespace Poincare { + Derivative::Derivative() : Function("diff") { @@ -127,3 +129,6 @@ float Derivative::approximateDerivate2(float x, float h, VariableContext xContex float expressionMinus = m_args[0]->approximate(xContext, angleUnit); return expressionPlus - 2.0f*expression + expressionMinus; } + +} + diff --git a/poincare/src/expression.cpp b/poincare/src/expression.cpp index 66121cbe2..1abfa6493 100644 --- a/poincare/src/expression.cpp +++ b/poincare/src/expression.cpp @@ -10,7 +10,9 @@ extern "C" { #include "simplify/rules.h" -int poincare_expression_yyparse(Expression ** expressionOutput); +int poincare_expression_yyparse(Poincare::Expression ** expressionOutput); + +namespace Poincare { Expression::~Expression() { } @@ -182,3 +184,5 @@ bool Expression::isCommutative() const { int Expression::writeTextInBuffer(char * buffer, int bufferSize) { return 0; } + +} diff --git a/poincare/src/expression_lexer.l b/poincare/src/expression_lexer.l index 5b3332bbe..922781aa0 100644 --- a/poincare/src/expression_lexer.l +++ b/poincare/src/expression_lexer.l @@ -40,7 +40,7 @@ * requires feature. */ #include #include "expression_parser.hpp" - +using namespace Poincare; /* Flex has provision for reading files. We'll never use this, so we're defining * YY_INPUT which effectively disables taking input from a file. */ diff --git a/poincare/src/expression_parser.y b/poincare/src/expression_parser.y index 70077bbb2..c19147dff 100644 --- a/poincare/src/expression_parser.y +++ b/poincare/src/expression_parser.y @@ -3,7 +3,7 @@ /* When calling the parser, we will provide yyparse with an extra parameter : a * backpointer to the resulting expression. */ -%parse-param { Expression ** expressionOutput } +%parse-param { Poincare::Expression ** expressionOutput } %{ #include @@ -14,7 +14,7 @@ /* Declare our error-handling function. Since we're making a re-entrant parser, * it takes a context parameter as its first input. */ -void poincare_expression_yyerror(Expression ** expressionOutput, char const *msg); +void poincare_expression_yyerror(Poincare::Expression ** expressionOutput, char const *msg); /* Bison expects to use __builtin_memcpy. We don't want to provide this, but * instead we do provide regular memcpy. Let's instruct Bison to use it. */ @@ -28,10 +28,10 @@ void poincare_expression_yyerror(Expression ** expressionOutput, char const *msg * when parsing (a/b) we want to create a new Fraction), or a string (this will * be useful to retrieve the value of Integers for example). */ %union { - Expression * expression; - ListData * listData; - MatrixData * matrixData; - Function * function; + Poincare::Expression * expression; + Poincare::ListData * listData; + Poincare::MatrixData * matrixData; + Poincare::Function * function; /* Caution: all the const char * are NOT guaranteed to be NULL-terminated! * While Flex guarantees that yytext is NULL-terminated when building tokens, * it does so by temporarily swapping in a NULL terminated in the input text. @@ -103,39 +103,39 @@ Root: * one has the highest precedence. */ lstData: - exp { $$ = new ListData($1); } + exp { $$ = new Poincare::ListData($1); } | lstData COMMA exp { $$ = $1; $$->pushExpression($3); } mtxData: - LEFT_BRACKET lstData RIGHT_BRACKET { $$ = new MatrixData($2); } + LEFT_BRACKET lstData RIGHT_BRACKET { $$ = new Poincare::MatrixData($2); } | mtxData LEFT_BRACKET lstData RIGHT_BRACKET { $$ = $1; $$->pushListData($3); } number: - DIGITS { $$ = new Integer($1.address, false); } - | DOT DIGITS { $$ = new Complex(nullptr, 0, false, $2.address, $2.length, nullptr, 0, false); } - | DIGITS DOT DIGITS { $$ = new Complex($1.address, $1.length, false, $3.address, $3.length, nullptr, 0, false); } - | DOT DIGITS EE DIGITS { $$ = new Complex(nullptr, 0, false, $2.address, $2.length, $4.address, $4.length, false); } - | DIGITS DOT DIGITS EE DIGITS { $$ = new Complex($1.address, $1.length, false, $3.address, $3.length, $5.address, $5.length, false); } - | DOT DIGITS EE MINUS DIGITS { $$ = new Complex(nullptr, 0, false, $2.address, $2.length, $5.address, $5.length, true); } - | DIGITS DOT DIGITS EE MINUS DIGITS { $$ = new Complex($1.address, $1.length, false, $3.address, $3.length, $6.address, $6.length, true); } + DIGITS { $$ = new Poincare::Integer($1.address, false); } + | DOT DIGITS { $$ = new Poincare::Complex(nullptr, 0, false, $2.address, $2.length, nullptr, 0, false); } + | DIGITS DOT DIGITS { $$ = new Poincare::Complex($1.address, $1.length, false, $3.address, $3.length, nullptr, 0, false); } + | DOT DIGITS EE DIGITS { $$ = new Poincare::Complex(nullptr, 0, false, $2.address, $2.length, $4.address, $4.length, false); } + | DIGITS DOT DIGITS EE DIGITS { $$ = new Poincare::Complex($1.address, $1.length, false, $3.address, $3.length, $5.address, $5.length, false); } + | DOT DIGITS EE MINUS DIGITS { $$ = new Poincare::Complex(nullptr, 0, false, $2.address, $2.length, $5.address, $5.length, true); } + | DIGITS DOT DIGITS EE MINUS DIGITS { $$ = new Poincare::Complex($1.address, $1.length, false, $3.address, $3.length, $6.address, $6.length, true); } exp: number { $$ = $1; } - | ICOMPLEX { $$ = new Complex(0.0f, 1.0f); } - | SYMBOL { $$ = new Symbol($1); } - | exp PLUS exp { Expression * terms[2] = {$1,$3}; $$ = new Addition(terms, false); } - | exp MINUS exp { Expression * terms[2] = {$1,$3}; $$ = new Subtraction(terms, false); } - | exp MULTIPLY exp { Expression * terms[2] = {$1,$3}; $$ = new Multiplication(terms, false); } - | exp DIVIDE exp { Expression * terms[2] = {$1,$3}; $$ = new Fraction(terms, false); } - | exp POW exp { Expression * terms[2] = {$1,$3}; $$ = new Power(terms, false); } - | MINUS exp { $$ = new Opposite($2, false); } - | LEFT_PARENTHESIS exp RIGHT_PARENTHESIS { $$ = new Parenthesis($2, false); } - | LEFT_BRACKET mtxData RIGHT_BRACKET { $$ = new Matrix($2); } + | ICOMPLEX { $$ = new Poincare::Complex(0.0f, 1.0f); } + | SYMBOL { $$ = new Poincare::Symbol($1); } + | exp PLUS exp { Poincare::Expression * terms[2] = {$1,$3}; $$ = new Poincare::Addition(terms, false); } + | exp MINUS exp { Poincare::Expression * terms[2] = {$1,$3}; $$ = new Poincare::Subtraction(terms, false); } + | exp MULTIPLY exp { Poincare::Expression * terms[2] = {$1,$3}; $$ = new Poincare::Multiplication(terms, false); } + | exp DIVIDE exp { Poincare::Expression * terms[2] = {$1,$3}; $$ = new Poincare::Fraction(terms, false); } + | exp POW exp { Poincare::Expression * terms[2] = {$1,$3}; $$ = new Poincare::Power(terms, false); } + | MINUS exp { $$ = new Poincare::Opposite($2, false); } + | LEFT_PARENTHESIS exp RIGHT_PARENTHESIS { $$ = new Poincare::Parenthesis($2, false); } + | LEFT_BRACKET mtxData RIGHT_BRACKET { $$ = new Poincare::Matrix($2); } | FUNCTION LEFT_PARENTHESIS lstData RIGHT_PARENTHESIS { $$ = $1; $1->setArgument($3, false);} ; %% -void poincare_expression_yyerror(Expression ** expressionOutput, char const *msg) { +void poincare_expression_yyerror(Poincare::Expression ** expressionOutput, char const *msg) { // Handle the error! } diff --git a/poincare/src/fraction.cpp b/poincare/src/fraction.cpp index 3f403b850..c0b182a0b 100644 --- a/poincare/src/fraction.cpp +++ b/poincare/src/fraction.cpp @@ -6,6 +6,8 @@ extern "C" { #include #include "layout/fraction_layout.h" +namespace Poincare { + Expression * Fraction::cloneWithDifferentOperands(Expression** newOperands, int numberOfOperands, bool cloneOperands) const { assert(numberOfOperands == 2); @@ -46,3 +48,5 @@ Expression * Fraction::evaluateOnMatrices(Matrix * m, Matrix * n, Context& conte return result;*/ return nullptr; } + +} diff --git a/poincare/src/function.cpp b/poincare/src/function.cpp index 84e8f9201..3f5c7facf 100644 --- a/poincare/src/function.cpp +++ b/poincare/src/function.cpp @@ -8,6 +8,8 @@ extern "C" { #include "layout/parenthesis_layout.h" #include "layout/string_layout.h" +namespace Poincare { + Function::Function(const char * name) : m_args(nullptr), m_numberOfArguments(0), @@ -93,3 +95,5 @@ Expression * Function::evaluate(Context& context, AngleUnit angleUnit) const { /* Default function evaluation works for reel function */ return new Complex(approximate(context, angleUnit)); } + +} diff --git a/poincare/src/global_context.cpp b/poincare/src/global_context.cpp index b84be34cf..349626676 100644 --- a/poincare/src/global_context.cpp +++ b/poincare/src/global_context.cpp @@ -3,6 +3,8 @@ #include #include +namespace Poincare { + GlobalContext::GlobalContext() : m_pi(Complex(M_PI)), m_e(Complex(M_E)) @@ -44,3 +46,5 @@ void GlobalContext::setExpressionForSymbolName(Expression * expression, const Sy assert(expression->type() == Expression::Type::Complex); m_expressions[index] = expression; } + +} diff --git a/poincare/src/hyperbolic_cosine.cpp b/poincare/src/hyperbolic_cosine.cpp index c2b3b3a57..721ab75e2 100644 --- a/poincare/src/hyperbolic_cosine.cpp +++ b/poincare/src/hyperbolic_cosine.cpp @@ -9,6 +9,8 @@ extern "C" { #include } +namespace Poincare { + HyperbolicCosine::HyperbolicCosine() : Function("cosh") { @@ -61,3 +63,5 @@ Expression * HyperbolicCosine::evaluate(Context& context, AngleUnit angleUnit) c delete result; return resultEvaluation; } + +} diff --git a/poincare/src/hyperbolic_sine.cpp b/poincare/src/hyperbolic_sine.cpp index c07849be4..ffee8103f 100644 --- a/poincare/src/hyperbolic_sine.cpp +++ b/poincare/src/hyperbolic_sine.cpp @@ -9,6 +9,8 @@ extern "C" { #include } +namespace Poincare { + HyperbolicSine::HyperbolicSine() : Function("sinh") { @@ -61,3 +63,5 @@ Expression * HyperbolicSine::evaluate(Context& context, AngleUnit angleUnit) con delete result; return resultEvaluation; } + +} diff --git a/poincare/src/hyperbolic_tangent.cpp b/poincare/src/hyperbolic_tangent.cpp index d122e99fd..94c6b3351 100644 --- a/poincare/src/hyperbolic_tangent.cpp +++ b/poincare/src/hyperbolic_tangent.cpp @@ -8,6 +8,8 @@ extern "C" { #include } +namespace Poincare { + HyperbolicTangent::HyperbolicTangent() : Function("tanh") { @@ -51,3 +53,5 @@ Expression * HyperbolicTangent::evaluate(Context& context, AngleUnit angleUnit) delete result; return resultEvaluation; } + +} diff --git a/poincare/src/integer.cpp b/poincare/src/integer.cpp index cc8822f99..f9d3558db 100644 --- a/poincare/src/integer.cpp +++ b/poincare/src/integer.cpp @@ -8,6 +8,8 @@ #define MAX(a,b) ((a)>(b)?a:b) #define NATIVE_UINT_BIT_COUNT (8*sizeof(native_uint_t)) +namespace Poincare { + uint8_t log2(native_uint_t v) { assert(NATIVE_UINT_BIT_COUNT < 256); // Otherwise uint8_t isn't OK for (uint8_t i=0; itype() == Type::Integer); return (*this == *(Integer *)e); // FIXME: Remove operator overloading } + +} diff --git a/poincare/src/integral.cpp b/poincare/src/integral.cpp index b0060a48f..4b46aac7c 100644 --- a/poincare/src/integral.cpp +++ b/poincare/src/integral.cpp @@ -12,6 +12,8 @@ extern "C" { #include "layout/string_layout.h" #include "layout/integral_layout.h" +namespace Poincare { + Integral::Integral() : Function("int") { @@ -163,3 +165,5 @@ float Integral::adaptiveQuadrature(float a, float b, float eps, int numberOfIter return result; } #endif + +} diff --git a/poincare/src/layout/absolute_value_layout.cpp b/poincare/src/layout/absolute_value_layout.cpp index 512104a50..9e1290ae3 100644 --- a/poincare/src/layout/absolute_value_layout.cpp +++ b/poincare/src/layout/absolute_value_layout.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +namespace Poincare { + AbsoluteValueLayout::AbsoluteValueLayout(ExpressionLayout * operandLayout) : ExpressionLayout(), m_operandLayout(operandLayout) @@ -37,3 +39,5 @@ ExpressionLayout * AbsoluteValueLayout::child(uint16_t index) { KDPoint AbsoluteValueLayout::positionOfChild(ExpressionLayout * child) { return KDPoint(k_straightBracketWidth + k_straightBracketMargin, 0); } + +} diff --git a/poincare/src/layout/absolute_value_layout.h b/poincare/src/layout/absolute_value_layout.h index aef3a968d..a3d702b5a 100644 --- a/poincare/src/layout/absolute_value_layout.h +++ b/poincare/src/layout/absolute_value_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class AbsoluteValueLayout : public ExpressionLayout { public: AbsoluteValueLayout(ExpressionLayout * operandLayout); @@ -19,4 +21,6 @@ private: ExpressionLayout * m_operandLayout; }; +} + #endif diff --git a/poincare/src/layout/baseline_relative_layout.cpp b/poincare/src/layout/baseline_relative_layout.cpp index 65c06380c..dfd2fc992 100644 --- a/poincare/src/layout/baseline_relative_layout.cpp +++ b/poincare/src/layout/baseline_relative_layout.cpp @@ -2,6 +2,8 @@ #include #include +namespace Poincare { + BaselineRelativeLayout::BaselineRelativeLayout(ExpressionLayout * baseLayout, ExpressionLayout * indiceLayout, Type type) : ExpressionLayout(), m_baseLayout(baseLayout), @@ -53,3 +55,6 @@ KDPoint BaselineRelativeLayout::positionOfChild(ExpressionLayout * child) { } return KDPoint(x,y); } + +} + diff --git a/poincare/src/layout/baseline_relative_layout.h b/poincare/src/layout/baseline_relative_layout.h index a4ed61e41..2e19a293d 100644 --- a/poincare/src/layout/baseline_relative_layout.h +++ b/poincare/src/layout/baseline_relative_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class BaselineRelativeLayout : public ExpressionLayout { public: enum class Type { @@ -24,4 +26,6 @@ class BaselineRelativeLayout : public ExpressionLayout { Type m_type; }; +} + #endif diff --git a/poincare/src/layout/expression_layout.cpp b/poincare/src/layout/expression_layout.cpp index c5ae2bdba..fab051990 100644 --- a/poincare/src/layout/expression_layout.cpp +++ b/poincare/src/layout/expression_layout.cpp @@ -2,6 +2,8 @@ #include #include "string_layout.h" +namespace Poincare { + ExpressionLayout::ExpressionLayout() : m_baseline(0), m_parent(nullptr), @@ -57,3 +59,5 @@ KDSize ExpressionLayout::size() { void ExpressionLayout::setParent(ExpressionLayout* parent) { m_parent = parent; } + +} diff --git a/poincare/src/layout/fraction_layout.cpp b/poincare/src/layout/fraction_layout.cpp index ca964d40c..407d00fc2 100644 --- a/poincare/src/layout/fraction_layout.cpp +++ b/poincare/src/layout/fraction_layout.cpp @@ -2,6 +2,8 @@ #include #include "fraction_layout.h" +namespace Poincare { + FractionLayout::FractionLayout(ExpressionLayout * numerator_layout, ExpressionLayout * denominator_layout) : ExpressionLayout(), m_numerator_layout(numerator_layout), m_denominator_layout(denominator_layout) { m_numerator_layout->setParent(this); @@ -54,3 +56,5 @@ KDPoint FractionLayout::positionOfChild(ExpressionLayout * child) { } return KDPoint(x, y); } + +} diff --git a/poincare/src/layout/fraction_layout.h b/poincare/src/layout/fraction_layout.h index d00d2e37a..3453fdbf1 100644 --- a/poincare/src/layout/fraction_layout.h +++ b/poincare/src/layout/fraction_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class FractionLayout : public ExpressionLayout { public: FractionLayout(ExpressionLayout * numerator, ExpressionLayout * denominator); @@ -21,4 +23,6 @@ class FractionLayout : public ExpressionLayout { ExpressionLayout * m_denominator_layout; }; +} + #endif diff --git a/poincare/src/layout/horizontal_layout.cpp b/poincare/src/layout/horizontal_layout.cpp index b07777ae1..90632eb05 100644 --- a/poincare/src/layout/horizontal_layout.cpp +++ b/poincare/src/layout/horizontal_layout.cpp @@ -6,6 +6,8 @@ extern "C" { #include "horizontal_layout.h" #include "string_layout.h" +namespace Poincare { + HorizontalLayout::HorizontalLayout(ExpressionLayout ** children_layouts, int number_of_children) : ExpressionLayout(), m_number_of_children(number_of_children), m_children_layouts(children_layouts) { assert(number_of_children > 0); @@ -72,3 +74,5 @@ KDPoint HorizontalLayout::positionOfChild(ExpressionLayout * child) { y = m_baseline - child->baseline(); return KDPoint(x, y); } + +} diff --git a/poincare/src/layout/horizontal_layout.h b/poincare/src/layout/horizontal_layout.h index 389370e78..d787d89de 100644 --- a/poincare/src/layout/horizontal_layout.h +++ b/poincare/src/layout/horizontal_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class HorizontalLayout : public ExpressionLayout { public: HorizontalLayout(ExpressionLayout ** layouts, int number_of_children); @@ -18,4 +20,6 @@ class HorizontalLayout : public ExpressionLayout { ExpressionLayout ** m_children_layouts; }; +} + #endif diff --git a/poincare/src/layout/integral_layout.cpp b/poincare/src/layout/integral_layout.cpp index 353420b93..6b91dc738 100644 --- a/poincare/src/layout/integral_layout.cpp +++ b/poincare/src/layout/integral_layout.cpp @@ -2,6 +2,8 @@ #include #include +namespace Poincare { + const uint8_t topSymbolPixel[IntegralLayout::k_symbolHeight][IntegralLayout::k_symbolWidth] = { {0x00, 0x00, 0xFF, 0xFF}, {0xFF, 0xFF, 0x00, 0xFF}, @@ -91,3 +93,5 @@ KDPoint IntegralLayout::positionOfChild(ExpressionLayout * child) { } return KDPoint(x,y); } + +} diff --git a/poincare/src/layout/integral_layout.h b/poincare/src/layout/integral_layout.h index c9ae69a8b..2f78c09a9 100644 --- a/poincare/src/layout/integral_layout.h +++ b/poincare/src/layout/integral_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class IntegralLayout : public ExpressionLayout { public: IntegralLayout(ExpressionLayout * lowerBoundLayout, ExpressionLayout * upperBoundLayout, ExpressionLayout * integrandLayout); @@ -26,4 +28,6 @@ private: ExpressionLayout * m_integrandLayout; }; +} + #endif diff --git a/poincare/src/layout/matrix_layout.cpp b/poincare/src/layout/matrix_layout.cpp index 72a6de3d3..5641d905a 100644 --- a/poincare/src/layout/matrix_layout.cpp +++ b/poincare/src/layout/matrix_layout.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +namespace Poincare { + MatrixLayout::MatrixLayout(ExpressionLayout ** entryLayouts, int numberOfRows, int numberOfColumns) : ExpressionLayout(), m_entryLayouts(entryLayouts), @@ -107,3 +109,5 @@ KDPoint MatrixLayout::positionOfChild(ExpressionLayout * child) { y += rowBaseline(rowIndex) - child->baseline() + rowIndex * k_matrixEntryMargin; return KDPoint(x, y); } + +} diff --git a/poincare/src/layout/matrix_layout.h b/poincare/src/layout/matrix_layout.h index 34d698dec..6ab3bccbf 100644 --- a/poincare/src/layout/matrix_layout.h +++ b/poincare/src/layout/matrix_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class MatrixLayout : public ExpressionLayout { public: MatrixLayout(ExpressionLayout ** entryLayouts, int numberOfRows, int numberOfColumns); @@ -27,4 +29,6 @@ class MatrixLayout : public ExpressionLayout { int m_numberOfColumns; }; +} + #endif diff --git a/poincare/src/layout/nth_root_layout.cpp b/poincare/src/layout/nth_root_layout.cpp index a178ca196..c9b75fbae 100644 --- a/poincare/src/layout/nth_root_layout.cpp +++ b/poincare/src/layout/nth_root_layout.cpp @@ -2,6 +2,8 @@ #include #include "nth_root_layout.h" +namespace Poincare { + const uint8_t radixPixel[NthRootLayout::k_leftRadixHeight][NthRootLayout::k_leftRadixWidth] = { {0x00, 0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0x00, 0xFF, 0xFF, 0xFF}, @@ -108,3 +110,6 @@ KDPoint NthRootLayout::positionOfChild(ExpressionLayout * child) { } return KDPoint(x,y); } + +} + diff --git a/poincare/src/layout/nth_root_layout.h b/poincare/src/layout/nth_root_layout.h index 26edaa59e..e138df140 100644 --- a/poincare/src/layout/nth_root_layout.h +++ b/poincare/src/layout/nth_root_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class NthRootLayout : public ExpressionLayout { public: NthRootLayout(ExpressionLayout * radicandLayout, ExpressionLayout * indexLayout); @@ -25,4 +27,6 @@ private: ExpressionLayout * m_indexLayout; }; +} + #endif diff --git a/poincare/src/layout/parenthesis_layout.cpp b/poincare/src/layout/parenthesis_layout.cpp index 7c92bc34c..4a203b004 100644 --- a/poincare/src/layout/parenthesis_layout.cpp +++ b/poincare/src/layout/parenthesis_layout.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +namespace Poincare { + const uint8_t topLeftCurve[ParenthesisLayout::k_parenthesisCurveHeight][ParenthesisLayout::k_parenthesisCurveWidth] = { {0xFF, 0xFF, 0xFF, 0xFF, 0x00}, {0xFF, 0xFF, 0xFF, 0x00, 0xFF}, @@ -90,3 +92,5 @@ ExpressionLayout * ParenthesisLayout::child(uint16_t index) { KDPoint ParenthesisLayout::positionOfChild(ExpressionLayout * child) { return KDPoint(k_widthMargin+k_lineThickness, k_heightMargin); } + +} diff --git a/poincare/src/layout/parenthesis_layout.h b/poincare/src/layout/parenthesis_layout.h index dc3c87772..ae90e5d8e 100644 --- a/poincare/src/layout/parenthesis_layout.h +++ b/poincare/src/layout/parenthesis_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class ParenthesisLayout : public ExpressionLayout { public: ParenthesisLayout(ExpressionLayout * operandLayout); @@ -22,4 +24,6 @@ private: ExpressionLayout * m_operandLayout; }; +} + #endif diff --git a/poincare/src/layout/product_layout.cpp b/poincare/src/layout/product_layout.cpp index b0e119d6d..4699da3c5 100644 --- a/poincare/src/layout/product_layout.cpp +++ b/poincare/src/layout/product_layout.cpp @@ -2,6 +2,8 @@ #include #include +namespace Poincare { + void ProductLayout::render(KDContext * ctx, KDPoint p, KDColor expressionColor, KDColor backgroundColor) { KDSize upperBoundSize = m_upperBoundLayout->size(); KDSize lowerBoundSize = m_lowerBoundLayout->size(); @@ -15,3 +17,5 @@ void ProductLayout::render(KDContext * ctx, KDPoint p, KDColor expressionColor, p.y() + max(upperBoundSize.height()+k_boundHeightMargin, m_argumentLayout->baseline()-k_symbolHeight), k_lineThickness, k_symbolHeight), expressionColor); } + +} diff --git a/poincare/src/layout/product_layout.h b/poincare/src/layout/product_layout.h index e1441117c..4aca54737 100644 --- a/poincare/src/layout/product_layout.h +++ b/poincare/src/layout/product_layout.h @@ -3,6 +3,8 @@ #include "sequence_layout.h" +namespace Poincare { + class ProductLayout : public SequenceLayout { public: using SequenceLayout::SequenceLayout; @@ -12,4 +14,6 @@ private: constexpr static KDCoordinate k_lineThickness = 1; }; +} + #endif diff --git a/poincare/src/layout/sequence_layout.cpp b/poincare/src/layout/sequence_layout.cpp index 239d1dc44..927d0ee08 100644 --- a/poincare/src/layout/sequence_layout.cpp +++ b/poincare/src/layout/sequence_layout.cpp @@ -2,6 +2,8 @@ #include #include +namespace Poincare { + SequenceLayout::SequenceLayout(ExpressionLayout * lowerBoundLayout, ExpressionLayout * upperBoundLayout, ExpressionLayout * argumentLayout) : ExpressionLayout(), m_lowerBoundLayout(lowerBoundLayout), @@ -62,3 +64,5 @@ KDPoint SequenceLayout::positionOfChild(ExpressionLayout * child) { } return KDPoint(x,y); } + +} diff --git a/poincare/src/layout/sequence_layout.h b/poincare/src/layout/sequence_layout.h index 4c4b71fa2..469b91a6a 100644 --- a/poincare/src/layout/sequence_layout.h +++ b/poincare/src/layout/sequence_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class SequenceLayout : public ExpressionLayout { public: SequenceLayout(ExpressionLayout * lowerBoundLayout, ExpressionLayout * upperBoundLayout, ExpressionLayout * argumentLayout); @@ -22,4 +24,6 @@ private: constexpr static KDCoordinate k_argumentWidthMargin = 2; }; +} + #endif diff --git a/poincare/src/layout/string_layout.cpp b/poincare/src/layout/string_layout.cpp index df19bacf5..88ee73ff1 100644 --- a/poincare/src/layout/string_layout.cpp +++ b/poincare/src/layout/string_layout.cpp @@ -2,6 +2,8 @@ #include #include "string_layout.h" +namespace Poincare { + StringLayout::StringLayout(const char * string, size_t length, KDText::FontSize fontSize) : ExpressionLayout(), m_fontSize(fontSize) @@ -33,3 +35,5 @@ KDPoint StringLayout::positionOfChild(ExpressionLayout * child) { KDSize StringLayout::computeSize() { return KDText::stringSize(m_string, m_fontSize); } + +} diff --git a/poincare/src/layout/string_layout.h b/poincare/src/layout/string_layout.h index 97cea6afc..ed94f4a25 100644 --- a/poincare/src/layout/string_layout.h +++ b/poincare/src/layout/string_layout.h @@ -4,6 +4,8 @@ #include #include +namespace Poincare { + class StringLayout : public ExpressionLayout { public: // Here the inverse is a uint8_t instead of a bool, because the size of a bool is @@ -21,4 +23,6 @@ class StringLayout : public ExpressionLayout { KDText::FontSize m_fontSize; }; +} + #endif diff --git a/poincare/src/layout/sum_layout.cpp b/poincare/src/layout/sum_layout.cpp index 509e2225a..17bb0a995 100644 --- a/poincare/src/layout/sum_layout.cpp +++ b/poincare/src/layout/sum_layout.cpp @@ -2,6 +2,8 @@ #include #include +namespace Poincare { + const uint8_t symbolPixel[SumLayout::k_symbolHeight][SumLayout::k_symbolWidth] = { {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, {0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, @@ -29,3 +31,5 @@ void SumLayout::render(KDContext * ctx, KDPoint p, KDColor expressionColor, KDCo k_symbolWidth, k_symbolHeight); ctx->blendRectWithMask(symbolFrame, expressionColor, (const uint8_t *)symbolPixel, (KDColor *)workingBuffer); } + +} diff --git a/poincare/src/layout/sum_layout.h b/poincare/src/layout/sum_layout.h index 94dcbb93b..e09e447cf 100644 --- a/poincare/src/layout/sum_layout.h +++ b/poincare/src/layout/sum_layout.h @@ -3,6 +3,8 @@ #include "sequence_layout.h" +namespace Poincare { + class SumLayout : public SequenceLayout { public: using SequenceLayout::SequenceLayout; @@ -10,4 +12,6 @@ private: void render(KDContext * ctx, KDPoint p, KDColor expressionColor, KDColor backgroundColor) override; }; +} + #endif diff --git a/poincare/src/leaf_expression.cpp b/poincare/src/leaf_expression.cpp index 5b1ddfe32..7b72f1a3a 100644 --- a/poincare/src/leaf_expression.cpp +++ b/poincare/src/leaf_expression.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +namespace Poincare { + int LeafExpression::numberOfOperands() const { return 0; } @@ -18,3 +20,5 @@ Expression * LeafExpression::cloneWithDifferentOperands(Expression** newOperands assert(numberOfOperands == 0); return this->clone(); } + +} diff --git a/poincare/src/list_data.cpp b/poincare/src/list_data.cpp index 5a8e72731..4e6e11194 100644 --- a/poincare/src/list_data.cpp +++ b/poincare/src/list_data.cpp @@ -4,6 +4,8 @@ extern "C" { } #include +namespace Poincare { + ListData::ListData(Expression * operand) : m_numberOfOperands(1), m_operands((Expression **)malloc(sizeof(Expression *))) @@ -39,3 +41,5 @@ const Expression * ListData::operand(int i) const { assert(i < m_numberOfOperands); return m_operands[i]; } + +} diff --git a/poincare/src/logarithm.cpp b/poincare/src/logarithm.cpp index 6b87433ce..bf205878c 100644 --- a/poincare/src/logarithm.cpp +++ b/poincare/src/logarithm.cpp @@ -9,6 +9,8 @@ extern "C" { #include "layout/string_layout.h" #include "layout/baseline_relative_layout.h" +namespace Poincare { + Logarithm::Logarithm() : Function("log") { @@ -43,3 +45,5 @@ ExpressionLayout * Logarithm::createLayout(DisplayMode displayMode) const { childrenLayouts[1] = new ParenthesisLayout(m_args[1]->createLayout(displayMode)); return new HorizontalLayout(childrenLayouts, 2); } + +} diff --git a/poincare/src/matrix.cpp b/poincare/src/matrix.cpp index 7f11e7ecd..8ff912cc5 100644 --- a/poincare/src/matrix.cpp +++ b/poincare/src/matrix.cpp @@ -8,6 +8,8 @@ extern "C" { #include #include +namespace Poincare { + Matrix::Matrix(MatrixData * matrixData) : m_matrixData(matrixData) { @@ -130,3 +132,5 @@ int Matrix::writeTextInBuffer(char * buffer, int bufferSize) { buffer[currentChar] = 0; return currentChar; } + +} diff --git a/poincare/src/matrix_data.cpp b/poincare/src/matrix_data.cpp index 631e7a5ef..4e3282820 100644 --- a/poincare/src/matrix_data.cpp +++ b/poincare/src/matrix_data.cpp @@ -5,6 +5,8 @@ extern "C" { #include #include +namespace Poincare { + MatrixData::MatrixData(ListData * listData) : m_numberOfRows(1), m_numberOfColumns(0) @@ -73,4 +75,4 @@ Expression ** MatrixData::operands() const { return m_operands; } - +} diff --git a/poincare/src/multiplication.cpp b/poincare/src/multiplication.cpp index c90fdc4a3..71c2cda7d 100644 --- a/poincare/src/multiplication.cpp +++ b/poincare/src/multiplication.cpp @@ -9,6 +9,8 @@ extern "C" { #include "layout/horizontal_layout.h" #include "layout/parenthesis_layout.h" +namespace Poincare { + Expression::Type Multiplication::type() const { return Expression::Type::Multiplication; } @@ -66,3 +68,5 @@ Expression * Multiplication::evaluateOnMatrices(Matrix * m, Matrix * n, Context& } return new Matrix(operands, m->numberOfRows() * n->numberOfColumns(), m->numberOfRows(), n->numberOfColumns(), false); } + +} diff --git a/poincare/src/naperian_logarithm.cpp b/poincare/src/naperian_logarithm.cpp index 22f7fb6c2..78333a9a8 100644 --- a/poincare/src/naperian_logarithm.cpp +++ b/poincare/src/naperian_logarithm.cpp @@ -8,6 +8,8 @@ extern "C" { #include "layout/parenthesis_layout.h" #include "layout/string_layout.h" +namespace Poincare { + NaperianLogarithm::NaperianLogarithm() : Function("ln") { @@ -29,3 +31,5 @@ Expression * NaperianLogarithm::cloneWithDifferentOperands(Expression** newOpera float NaperianLogarithm::approximate(Context& context, AngleUnit angleUnit) const { return log10f(m_args[0]->approximate(context, angleUnit))/log10f(M_E); } + +} diff --git a/poincare/src/nth_root.cpp b/poincare/src/nth_root.cpp index 1fc99bf8d..43b159b86 100644 --- a/poincare/src/nth_root.cpp +++ b/poincare/src/nth_root.cpp @@ -9,6 +9,8 @@ extern "C" { #include } +namespace Poincare { + NthRoot::NthRoot() : Function("root") { @@ -61,4 +63,6 @@ Expression * NthRoot::evaluate(Context& context, AngleUnit angleUnit) const { delete operands[1]; delete power; return newResult; -} \ No newline at end of file +} + +} diff --git a/poincare/src/opposite.cpp b/poincare/src/opposite.cpp index 5129bb363..251a4c86e 100644 --- a/poincare/src/opposite.cpp +++ b/poincare/src/opposite.cpp @@ -8,6 +8,8 @@ extern "C" { #include "layout/parenthesis_layout.h" #include "layout/string_layout.h" +namespace Poincare { + Opposite::Opposite(Expression * operand, bool cloneOperands) { assert(operand != nullptr); if (cloneOperands) { @@ -88,3 +90,5 @@ Expression * Opposite::evaluateOnMatrix(Matrix * m, Context& context, AngleUnit } return new Matrix(operands, m->numberOfRows() * m->numberOfColumns(), m->numberOfColumns(), m->numberOfRows(), false); } + +} diff --git a/poincare/src/parenthesis.cpp b/poincare/src/parenthesis.cpp index 28998820e..32ef84a3b 100644 --- a/poincare/src/parenthesis.cpp +++ b/poincare/src/parenthesis.cpp @@ -5,6 +5,8 @@ extern "C" { #include #include "layout/parenthesis_layout.h" +namespace Poincare { + Parenthesis::Parenthesis(Expression * operand, bool cloneOperands) { assert(operand != nullptr); if (cloneOperands) { @@ -53,3 +55,5 @@ Expression * Parenthesis::cloneWithDifferentOperands(Expression** newOperands, assert(newOperands != nullptr); return new Parenthesis(newOperands[0], cloneOperands); } + +} diff --git a/poincare/src/power.cpp b/poincare/src/power.cpp index 31cef8b75..7e8cdd10c 100644 --- a/poincare/src/power.cpp +++ b/poincare/src/power.cpp @@ -6,6 +6,8 @@ extern "C" { #include #include "layout/baseline_relative_layout.h" +namespace Poincare { + float Power::approximate(Context& context, AngleUnit angleUnit) const { return powf(m_operands[0]->approximate(context, angleUnit), m_operands[1]->approximate(context, angleUnit)); } @@ -76,3 +78,5 @@ Expression * Power::evaluateOnComplexAndMatrix(Complex * c, Matrix * m, Context& Expression * Power::evaluateOnMatrices(Matrix * m, Matrix * n, Context& context, AngleUnit angleUnit) const { return nullptr; } + +} diff --git a/poincare/src/product.cpp b/poincare/src/product.cpp index c36848a8f..9745a7a98 100644 --- a/poincare/src/product.cpp +++ b/poincare/src/product.cpp @@ -12,6 +12,8 @@ extern "C" { #include } +namespace Poincare { + Product::Product() : Function("product") { @@ -75,3 +77,5 @@ Expression * Product::evaluate(Context& context, AngleUnit angleUnit) const { } return result; } + +} diff --git a/poincare/src/simplify/expression_builder.cpp b/poincare/src/simplify/expression_builder.cpp index 59ae53db5..06d8975dd 100644 --- a/poincare/src/simplify/expression_builder.cpp +++ b/poincare/src/simplify/expression_builder.cpp @@ -7,6 +7,8 @@ extern "C" { #include } +namespace Poincare { + Expression * ExpressionBuilder::build(ExpressionMatch matches[]) { Expression * children_expressions[255]; // FIXME: <- The sized can be given by the compiler //Expression * children_expressions = malloc; @@ -84,3 +86,5 @@ ExpressionBuilder * ExpressionBuilder::child(int index) { return previousChild+previousChild->m_numberOfChildren+1; // Pointer arithm. } } + +} diff --git a/poincare/src/simplify/expression_builder.h b/poincare/src/simplify/expression_builder.h index bec3bd14b..709e8b4a2 100644 --- a/poincare/src/simplify/expression_builder.h +++ b/poincare/src/simplify/expression_builder.h @@ -7,6 +7,8 @@ extern "C" { #include } +namespace Poincare { + class ExpressionBuilder { public: static constexpr ExpressionBuilder BuildFromType(Expression::Type type, uint8_t numberOfChildren); @@ -124,4 +126,6 @@ constexpr ExpressionBuilder::ExpressionBuilder(ExternalGenerator * generator, m_numberOfChildren(numberOfChildren) { } +} + #endif diff --git a/poincare/src/simplify/expression_match.cpp b/poincare/src/simplify/expression_match.cpp index 5857b5190..b802128b7 100644 --- a/poincare/src/simplify/expression_match.cpp +++ b/poincare/src/simplify/expression_match.cpp @@ -5,6 +5,8 @@ extern "C" { #include } +namespace Poincare { + ExpressionMatch::ExpressionMatch() { m_numberOfExpressions = 0; m_expressions = nullptr; @@ -41,3 +43,5 @@ ExpressionMatch& ExpressionMatch::operator=(ExpressionMatch&& other) { m_expressions = other.m_expressions; return *this; } + +} diff --git a/poincare/src/simplify/expression_match.h b/poincare/src/simplify/expression_match.h index b480d1e65..5bc10cfb0 100644 --- a/poincare/src/simplify/expression_match.h +++ b/poincare/src/simplify/expression_match.h @@ -6,6 +6,8 @@ extern "C" { #include } +namespace Poincare { + class ExpressionMatch { public: ExpressionMatch(); @@ -19,4 +21,6 @@ private: int m_numberOfExpressions; }; +} + #endif diff --git a/poincare/src/simplify/expression_selector.cpp b/poincare/src/simplify/expression_selector.cpp index 980bcd04f..cb169c627 100644 --- a/poincare/src/simplify/expression_selector.cpp +++ b/poincare/src/simplify/expression_selector.cpp @@ -7,6 +7,8 @@ extern "C" { #include #include "expression_selector.h" +namespace Poincare { + const uint8_t kUnmatched = 0xff; int ExpressionSelector::numberOfNonWildcardChildren() { @@ -326,3 +328,5 @@ ExpressionSelector * ExpressionSelector::child(int index) { return previousChild+previousChild->m_numberOfChildren+1; // Pointer arithm. } } + +} diff --git a/poincare/src/simplify/expression_selector.h b/poincare/src/simplify/expression_selector.h index 1a2e50a02..d4fdb701f 100644 --- a/poincare/src/simplify/expression_selector.h +++ b/poincare/src/simplify/expression_selector.h @@ -7,6 +7,8 @@ extern "C" { #include } +namespace Poincare { + class ExpressionSelector { public: static constexpr ExpressionSelector Any(uint8_t numberOfChildren); @@ -97,4 +99,6 @@ constexpr ExpressionSelector::ExpressionSelector(Match match, m_numberOfChildren(numberOfChildren) { } +} + #endif diff --git a/poincare/src/simplify/rules.h b/poincare/src/simplify/rules.h index 54b9c7807..13a07203c 100644 --- a/poincare/src/simplify/rules.h +++ b/poincare/src/simplify/rules.h @@ -3,7 +3,11 @@ #include "simplification.h" +namespace Poincare { + extern const Simplification simplifications[]; extern const int knumberOfSimplifications; +} + #endif diff --git a/poincare/src/simplify/rules_generation/rules_parser.y b/poincare/src/simplify/rules_generation/rules_parser.y index 30cfeba1b..02953108a 100644 --- a/poincare/src/simplify/rules_generation/rules_parser.y +++ b/poincare/src/simplify/rules_generation/rules_parser.y @@ -114,6 +114,8 @@ int main(void) { std::cout << "#include \"rules.h\"" << std::endl; std::cout << "#include \"simplification_generator.h\"" << std::endl; std::cout << std::endl; + std::cout << "using namespace Poincare;" << std::endl; + std::cout << std::endl; int counter = 0; for (int i=0; isize(); i++) { @@ -122,7 +124,7 @@ int main(void) { rules->at(i)->generate(name.str()); std::cout << std::endl; } - std::cout << "constexpr Simplification simplifications[" << rules->size() << "] = {" << std::endl; + std::cout << "constexpr Simplification Poincare::simplifications[" << rules->size() << "] = {" << std::endl; for (int i=0; isize(); i++) { std::stringstream name; name << "rule" << i; @@ -131,7 +133,7 @@ std::cout << " Simplification((ExpressionSelector *)" << name.str() << "Selecto std::cout << "};" << std::endl; std::cout << std::endl; - std::cout << "constexpr int knumberOfSimplifications = " << rules->size() << ";" << std::endl; + std::cout << "constexpr int Poincare::knumberOfSimplifications = " << rules->size() << ";" << std::endl; delete rules; return 0; diff --git a/poincare/src/simplify/simplification.cpp b/poincare/src/simplify/simplification.cpp index f540f1468..f751b62c2 100644 --- a/poincare/src/simplify/simplification.cpp +++ b/poincare/src/simplify/simplification.cpp @@ -1,5 +1,7 @@ #include "simplification.h" +namespace Poincare { + Expression * Simplification::simplify(Expression * expression) const { ExpressionMatch matches[255]; // FIXME: The size ca be given by our compiler if (m_selector->match(expression, matches)) { @@ -8,3 +10,5 @@ Expression * Simplification::simplify(Expression * expression) const { return nullptr; } } + +} diff --git a/poincare/src/simplify/simplification.h b/poincare/src/simplify/simplification.h index 059c3cc0d..d17598dbe 100644 --- a/poincare/src/simplify/simplification.h +++ b/poincare/src/simplify/simplification.h @@ -5,6 +5,8 @@ #include "expression_selector.h" #include "expression_builder.h" +namespace Poincare { + class Simplification { public: constexpr Simplification(ExpressionSelector * m_selector, ExpressionBuilder * m_builder); @@ -22,4 +24,6 @@ constexpr Simplification::Simplification( m_builder(builder) { } +} + #endif diff --git a/poincare/src/simplify/simplification_generator.cpp b/poincare/src/simplify/simplification_generator.cpp index dace1fbba..5f58accd7 100644 --- a/poincare/src/simplify/simplification_generator.cpp +++ b/poincare/src/simplify/simplification_generator.cpp @@ -4,6 +4,8 @@ extern "C" { #include } +namespace Poincare { + Expression * SimplificationGenerator::AddIntegers(Expression ** parameters, int numberOfParameters) { Integer * result = new Integer((native_int_t)0); for (int i=0; i +namespace Poincare { + class SimplificationGenerator { public: static Expression * AddIntegers(Expression ** parameters, int numberOfParameters); static Expression * MultiplyIntegers(Expression ** parameters, int numberOfParameters); }; +} + #endif diff --git a/poincare/src/sine.cpp b/poincare/src/sine.cpp index 1c07dc597..caec57f2c 100644 --- a/poincare/src/sine.cpp +++ b/poincare/src/sine.cpp @@ -7,6 +7,8 @@ extern "C" { #include } +namespace Poincare { + Sine::Sine() : Function("sin") { @@ -54,3 +56,5 @@ Expression * Sine::evaluate(Context& context, AngleUnit angleUnit) const { delete result; return resultEvaluation; } + +} diff --git a/poincare/src/square_root.cpp b/poincare/src/square_root.cpp index 7c12b71ae..948ce4a05 100644 --- a/poincare/src/square_root.cpp +++ b/poincare/src/square_root.cpp @@ -7,6 +7,8 @@ extern "C" { #include } +namespace Poincare { + SquareRoot::SquareRoot() : Function("v") { @@ -50,3 +52,5 @@ Expression * SquareRoot::evaluate(Context& context, AngleUnit angleUnit) const { delete power; return newResult; } + +} diff --git a/poincare/src/subtraction.cpp b/poincare/src/subtraction.cpp index 9198517f2..d8aa5c5d6 100644 --- a/poincare/src/subtraction.cpp +++ b/poincare/src/subtraction.cpp @@ -9,6 +9,8 @@ extern "C" { #include "layout/string_layout.h" #include "layout/parenthesis_layout.h" +namespace Poincare { + Expression * Subtraction::cloneWithDifferentOperands(Expression** newOperands, int numberOfOperands, bool cloneOperands) const { assert(newOperands != nullptr); @@ -44,3 +46,5 @@ Expression * Subtraction::evaluateOnComplexAndMatrix(Complex * c, Matrix * m, Co delete opposite; return result; } + +} diff --git a/poincare/src/sum.cpp b/poincare/src/sum.cpp index 17309bebf..38cca49fd 100644 --- a/poincare/src/sum.cpp +++ b/poincare/src/sum.cpp @@ -12,6 +12,8 @@ extern "C" { #include } +namespace Poincare { + Sum::Sum() : Function("sum") { @@ -75,3 +77,5 @@ Expression * Sum::evaluate(Context& context, AngleUnit angleUnit) const { } return result; } + +} diff --git a/poincare/src/symbol.cpp b/poincare/src/symbol.cpp index fa26ff66d..a74d8921c 100644 --- a/poincare/src/symbol.cpp +++ b/poincare/src/symbol.cpp @@ -6,6 +6,8 @@ extern "C" { #include } +namespace Poincare { + Symbol::Symbol(char name) : m_name(name) { @@ -46,3 +48,5 @@ bool Symbol::valueEquals(const Expression * e) const { assert(e->type() == Expression::Type::Symbol); return (m_name == ((Symbol *)e)->m_name); } + +} diff --git a/poincare/src/tangent.cpp b/poincare/src/tangent.cpp index 75e288edb..ebe06d6c0 100644 --- a/poincare/src/tangent.cpp +++ b/poincare/src/tangent.cpp @@ -8,6 +8,8 @@ extern "C" { #include } +namespace Poincare { + Tangent::Tangent() : Function("tan") { @@ -53,3 +55,5 @@ Expression * Tangent::evaluate(Context& context, AngleUnit angleUnit) const { delete result; return resultEvaluation; } + +} diff --git a/poincare/src/variable_context.cpp b/poincare/src/variable_context.cpp index 924b43aa0..afcffcf9b 100644 --- a/poincare/src/variable_context.cpp +++ b/poincare/src/variable_context.cpp @@ -1,7 +1,9 @@ #include #include -VariableContext::VariableContext(char name, ::Context * parentContext) : +namespace Poincare { + +VariableContext::VariableContext(char name, Context * parentContext) : m_name(name), m_value(Complex(0.0f)), m_parentContext(parentContext) @@ -26,3 +28,4 @@ const Expression * VariableContext::expressionForSymbol(const Symbol * symbol) { } } +} diff --git a/poincare/test/addition.cpp b/poincare/test/addition.cpp index 762ead39b..7b39e315b 100644 --- a/poincare/test/addition.cpp +++ b/poincare/test/addition.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_addition_approximate) { GlobalContext globalContext; Expression * a = Expression::parse("1+2"); diff --git a/poincare/test/complex.cpp b/poincare/test/complex.cpp index 6132c53a6..65212a7df 100644 --- a/poincare/test/complex.cpp +++ b/poincare/test/complex.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_complex_to_text) { char buffer[14]; Complex::convertFloatToText(123.456f,buffer, 14, 7); diff --git a/poincare/test/fraction.cpp b/poincare/test/fraction.cpp index 433802586..92f8ff44f 100644 --- a/poincare/test/fraction.cpp +++ b/poincare/test/fraction.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_fraction_approximate) { GlobalContext globalContext; Expression * f = Expression::parse("1/2"); diff --git a/poincare/test/integer.cpp b/poincare/test/integer.cpp index 068a05f51..0852e7ef9 100644 --- a/poincare/test/integer.cpp +++ b/poincare/test/integer.cpp @@ -2,6 +2,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_integer) { assert(Integer(123) == Integer(123)); assert(Integer("123") == Integer(123)); diff --git a/poincare/test/matrix.cpp b/poincare/test/matrix.cpp index 444e9a139..df10764e4 100644 --- a/poincare/test/matrix.cpp +++ b/poincare/test/matrix.cpp @@ -2,6 +2,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_matrix_evaluate) { GlobalContext globalContext; Expression * f = Expression::parse("[[1,2,3][4,5,6]]"); diff --git a/poincare/test/parser.cpp b/poincare/test/parser.cpp index 1e5e304a5..b0f3cb0de 100644 --- a/poincare/test/parser.cpp +++ b/poincare/test/parser.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_parser) { GlobalContext globalContext; Expression * a = Expression::parse("1.2*e^(1)"); diff --git a/poincare/test/power.cpp b/poincare/test/power.cpp index 4ff0772d0..30a150164 100644 --- a/poincare/test/power.cpp +++ b/poincare/test/power.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_power_approximate) { GlobalContext globalContext; Expression * p = Expression::parse("2^3"); diff --git a/poincare/test/product.cpp b/poincare/test/product.cpp index 8ed85b593..6a4260a16 100644 --- a/poincare/test/product.cpp +++ b/poincare/test/product.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_product_approximate) { GlobalContext globalContext; Expression * p = Expression::parse("1*2"); diff --git a/poincare/test/simplify_addition.cpp b/poincare/test/simplify_addition.cpp index 948d72f3f..0c9b0eb4b 100644 --- a/poincare/test/simplify_addition.cpp +++ b/poincare/test/simplify_addition.cpp @@ -2,6 +2,8 @@ #include #include "simplify_utils.h" +using namespace Poincare; + QUIZ_CASE(poincare_simplify_addition_integer) { assert(simplifies_to("1", "1")); assert(simplifies_to("1+2", "3")); diff --git a/poincare/test/simplify_product.cpp b/poincare/test/simplify_product.cpp index 907a8b35c..ce1207271 100644 --- a/poincare/test/simplify_product.cpp +++ b/poincare/test/simplify_product.cpp @@ -2,6 +2,8 @@ #include #include "simplify_utils.h" +using namespace Poincare; + QUIZ_CASE(poincare_simplify_product_by_zero) { assert(simplifies_to("3*0", "0")); assert(simplifies_to("A*0", "0")); diff --git a/poincare/test/simplify_utils.cpp b/poincare/test/simplify_utils.cpp index f573e765e..d26ffd067 100644 --- a/poincare/test/simplify_utils.cpp +++ b/poincare/test/simplify_utils.cpp @@ -1,6 +1,8 @@ #include #include +using namespace Poincare; + #if POINCARE_TESTS_PRINT_EXPRESSIONS #include "../src/expression_debug.h" #include diff --git a/poincare/test/subtraction.cpp b/poincare/test/subtraction.cpp index 2ae827419..8f083837c 100644 --- a/poincare/test/subtraction.cpp +++ b/poincare/test/subtraction.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_subtraction_approximate) { GlobalContext globalContext; Expression * s = Expression::parse("1-2"); diff --git a/poincare/test/trigo.cpp b/poincare/test/trigo.cpp index 7e6c07c84..7dbded374 100644 --- a/poincare/test/trigo.cpp +++ b/poincare/test/trigo.cpp @@ -3,6 +3,8 @@ #include #include +using namespace Poincare; + QUIZ_CASE(poincare_parse_trigo) { { Expression * e = Expression::parse("sin(0)");