Commit Graph

1406 Commits

Author SHA1 Message Date
Émilie Feral
c95c3145bc Merge remote-tracking branch 'github/master' into Tree 2018-09-13 17:03:31 +02:00
Léa Saviot
deada55740 [poincare] Fix a node/ref comparison: use id comparison instead of nodes
This prevents breaking an assertion in node(), that Ghost should not be
a Ghost
2018-09-13 16:03:12 +02:00
Léa Saviot
f240899fc7 [poincare] Put the exception handler before Container::run 2018-09-13 16:02:58 +02:00
Léa Saviot
1606bf04d1 [poincare] Fix EmptyLayout addition to Horizontal layout
Propagate the removeEmptyChildren parameters
2018-09-13 12:02:39 +02:00
Émilie Feral
6c1db3e64b [poincare] GlobalContext stores Expression in Ion::Storage 2018-09-13 11:33:15 +02:00
Léa Saviot
76fbea6a83 [poincare] Remove virtuality on LayoutReference 2018-09-12 16:54:16 +02:00
Émilie Feral
4712aaa872 [poincare] Improve Decimal and Rational log 2018-09-12 15:41:46 +02:00
Léa Saviot
cb471d83d5 [escher] After packing an app, assert the TreePool size is 0 2018-09-12 15:37:03 +02:00
Léa Saviot
77a66fd314 [poincare] TreeByReference::size() and addressInPool() 2018-09-12 15:26:07 +02:00
Léa Saviot
42cc6c0670 [poincare] Add method TreePool::copyTreeFromAddress 2018-09-12 15:25:36 +02:00
Romain Goyet
47fe5d829a [poincare] Use a re-entrant parser
This removes all global variables
2018-09-12 14:11:20 +02:00
Romain Goyet
9b177e8501 [poincare] use Poincare::ExceptionCheckpoint to handle exceptions 2018-09-12 14:11:20 +02:00
Romain Goyet
1728803ab9 [poincare] Actually use move semantics for TreeByReference 2018-09-12 14:11:20 +02:00
Émilie Feral
276c086471 [poincare] Evaluation: forbid implicit conversion from MatrixComplex to
Complex
2018-09-12 11:09:09 +02:00
Émilie Feral
0c4a5594a0 [poincare] Clean warnings 2018-09-12 11:04:23 +02:00
Émilie Feral
9dc210c9d8 [poincare] FractionLayout add parenthesis to all children when
serializing
2018-09-12 10:47:14 +02:00
Émilie Feral
81b62ae25e [poincare] SerializationHelperInterface: change
needsParenthesesWithParent for childNeedsParenthesis
2018-09-12 10:47:07 +02:00
Léa Saviot
c482c86f72 [poincare] Fix Rational constructors
- Remove wrong parameter
- Compute the RationalNode size in one method only
- Remove wrong assertion on denominator
2018-09-11 10:51:16 +02:00
Émilie Feral
fd30e4d501 [poincare] Add comment on caps of Decimal 2018-09-10 18:06:37 +02:00
Émilie Feral
5100222bc0 [poincare] Comment: how Integers are allocated 2018-09-10 18:04:12 +02:00
Léa Saviot
c85c375464 [poincare] Fix number parsing (typo + change k_maxExponentLength) 2018-09-10 17:55:59 +02:00
Léa Saviot
1c0fb64a32 [poincare] Make tree constructors that take one tree argument explicit
Otherwise, Logarithm l = clone() is equivalent to Logarithm l =
Logarithm(clone());
2018-09-10 17:34:50 +02:00
Léa Saviot
a436cca301 [poincare] Escape when overflows in Integer::multiplication, usum... 2018-09-10 16:19:59 +02:00
Émilie Feral
d4723bf6db [poincare] Clean warnings on size/unsize 2018-09-10 10:06:51 +02:00
Léa Saviot
aaf5cee967 [poincare] make tests compile 2018-09-10 09:54:37 +02:00
Léa Saviot
9b5f90d5bc [poincare] Uninline Float constructor 2018-09-10 09:40:57 +02:00
Léa Saviot
730b4a1e26 [poicnare] Uninline Power consructor 2018-09-10 09:40:57 +02:00
Léa Saviot
5712e7754c [poincare] Remove unnecessary arguments in some Power methods 2018-09-07 17:54:40 +02:00
Léa Saviot
1e59b67cbe [poincare] un-inline Layout constructors 2018-09-07 17:23:32 +02:00
Léa Saviot
8926ed6f36 [poincare] Un)iline some layotu constructors 2018-09-07 17:08:03 +02:00
Léa Saviot
780ab48d5b [poincare] un-inline some LayoutReference methods 2018-09-07 16:45:51 +02:00
Léa Saviot
b4ea4d9dab [poincare] uninline methods in Evaluation and subclasses 2018-09-07 16:27:22 +02:00
Léa Saviot
9c6e65997f [poincare] Un-inline Complex(std::complex) 2018-09-07 16:14:21 +02:00
Léa Saviot
bcf299c241 [poincare] Un-inline Expression::parent() (inline later if possible !) 2018-09-07 15:23:49 +02:00
Léa Saviot
5e42aa31f9 [poincare] un-inline setSign and approximateToEvaluation 2018-09-07 15:18:37 +02:00
Émilie Feral
5d281aacc4 [apps] Fix VariableBox for Matrix 2018-09-07 15:15:14 +02:00
Léa Saviot
676d78aa0c [poincarE] Remove virtual Expression destructor 2018-09-07 15:13:40 +02:00
Léa Saviot
45808bcbaa [poincare] Expression un-inline to reduce binary size 2018-09-07 13:54:54 +02:00
Émilie Feral
2605c6323a [poincare] Expression: createLayout and approximateToEvaluation return a
default value with uninitialized Expression
2018-09-07 13:40:19 +02:00
Émilie Feral
cbddbe3875 [poincare] Expression hierarchy method does not re-construct an
Expression from a node but cast the TreeByReference in Expression
2018-09-07 13:39:54 +02:00
Léa Saviot
39a7b8df86 [poincare] Un-iniline more methods 2018-09-07 13:31:35 +02:00
Léa Saviot
72703f3731 [poincare] Un-inline more TreeByReference methods 2018-09-07 13:31:35 +02:00
Émilie Feral
d50db1a478 [poincare] Multiplication: move computeOnArrays on Multiplication
instead of MultiplicationNode
2018-09-07 12:02:25 +02:00
Léa Saviot
f4eea76070 [poincare] Un-inline TreeByReference::childAtIndex 2018-09-07 11:53:48 +02:00
Émilie Feral
6015bdbc08 [poincare] Clean warning 2018-09-07 11:51:34 +02:00
Léa Saviot
b40aceec57 [poincare] Un-inline TreeByReference::TreeByReference(Node *) 2018-09-07 11:48:00 +02:00
Émilie Feral
dde1409be2 [regression] Fix Models with new Poincare API 2018-09-07 11:40:05 +02:00
Léa Saviot
e69a07f6f6 [poincare] Un-inline TreePool::createTreeNode 2018-09-07 10:18:55 +02:00
Léa Saviot
9d53906a0b [poincare] Un-inline the default Expression (and Layout...) constructors 2018-09-07 10:18:55 +02:00
Léa Saviot
de5b085923 [poincare] Separate some declarations of std:complex in a .cpp 2018-09-07 10:18:55 +02:00