Commit Graph

1406 Commits

Author SHA1 Message Date
Léa Saviot
907eedd4bc [poincare] Use SymbolAbstract in setExpressionForSymbol 2018-11-23 12:04:00 +01:00
Émilie Feral
da2d6de0c1 [poincare] SymbolAbstract: add a static method TruncateExtension 2018-11-23 12:04:00 +01:00
Léa Saviot
23f62b8dbe [poincare] Factorize approximate<T> in Function 2018-11-23 12:04:00 +01:00
Léa Saviot
6197ebd4c5 [poincare] SymbolAbstract is parent of Symbol and Function 2018-11-23 12:04:00 +01:00
Émilie Feral
5411fa5279 [poincare] GlobalContext: make the '.func' extension public 2018-11-23 12:04:00 +01:00
Léa Saviot
de592ee5fd [apps/graph] Generate default function names 2018-11-23 12:04:00 +01:00
Léa Saviot
eb427f701e [poincare] Init SymbolNode so it can give its size as soon as created 2018-11-23 12:04:00 +01:00
Léa Saviot
aebeeda171 [poincare] Fix Function::size() 2018-11-23 12:04:00 +01:00
Léa Saviot
4af3d27431 [poincare] ExpressionFromRecord is in Expression, not in GlobalContext 2018-11-23 12:04:00 +01:00
Léa Saviot
354b6e9c72 [apps] First attempt at bridging Funciton app with the shared storage 2018-11-23 12:04:00 +01:00
Léa Saviot
9cbca3c277 [poincare] Implement Function::shallowReduce 2018-11-23 12:03:59 +01:00
Léa Saviot
004b84a3b1 [poincare] Remove old code 2018-11-23 12:03:59 +01:00
Léa Saviot
3809ef222d [poincare] deep and shallow Reduce have a "replace symbol" bool param 2018-11-23 12:03:59 +01:00
Léa Saviot
a7a719df4a [poincare] Handle functions in replaceSymbolWithExp and similar methods 2018-11-23 12:03:59 +01:00
Léa Saviot
3802639510 [poincare] Remove isVariableSymbol test 2018-11-23 12:03:59 +01:00
Léa Saviot
4b37163653 [poincare] Fix more "char * []" type problems 2018-11-23 12:03:59 +01:00
Léa Saviot
870cd926c1 [poincare] Fix getVariables argument type 2018-11-23 12:03:59 +01:00
Léa Saviot
256b2f8b76 [poincare] diff takes the unknown as argument
diff(f(x), x, a) will give diff of f with unknown variable x, evaluated
for x = a;
2018-11-23 12:03:59 +01:00
Émilie Feral
82e6e0895c [poincare] GlobalContext: add a flag describing the storage memory state 2018-11-23 12:03:59 +01:00
Léa Saviot
da407df9b1 [poincare] Fix method name typo 2018-11-23 12:03:59 +01:00
Léa Saviot
aaca53e9b0 [poincare] Fix symbol constructor: name and its length are mandatory 2018-11-23 12:03:59 +01:00
Émilie Feral
ccbcf18811 [poincare] VariableContext holds an Expression instead of a Float<T> 2018-11-23 12:03:59 +01:00
Léa Saviot
2ac3dacbc3 [poincare] Extension strings should not include the dot 2018-11-23 12:03:59 +01:00
Léa Saviot
08eea64c73 [poincare] SymbolNode needs a size congruent to 0 modulo 4 2018-11-23 12:03:58 +01:00
Léa Saviot
2e2bf96bca [apps/poincare] use Symbol::k_ans constexpr char * 2018-11-23 12:03:58 +01:00
Émilie Feral
57eebfa9f8 [poincare] GlobalContext: no limit on the number of stored Expression or
Function
2018-11-23 12:03:58 +01:00
Émilie Feral
256620854f [poincare] Fix IsMatrix to be used as a ExpressionTest 2018-11-23 12:03:58 +01:00
Léa Saviot
b6cab2cdba [poincare] Replace x with childAtIndex(0) when computing on Function 2018-11-23 12:03:58 +01:00
Léa Saviot
31d3a04678 [poincare] setExpressionForSymbolName takes a symbol name 2018-11-23 12:03:58 +01:00
Émilie Feral
904de27815 [poincare] Fix Expression::isMatrix and Expression::isApproximate 2018-11-23 12:03:58 +01:00
Émilie Feral
35bdb8addf [poincare] Symbol: fix the constructor to match the lexer 2018-11-23 12:03:58 +01:00
Léa Saviot
6b4a104164 [poincare] GlobalContext stores expressions and functions 2018-11-23 12:03:58 +01:00
Émilie Feral
a6663f524f [poincare] VariableContext hold a const char * instead of a char 2018-11-23 12:03:58 +01:00
Émilie Feral
8072520686 [poincare] Fix getLinearCoefficients, getVariables signature: the
variables table is a char * table
2018-11-23 12:03:58 +01:00
Émilie Feral
9ac8ddb27a [poincare] Clean 2018-11-23 12:03:58 +01:00
Émilie Feral
1fff98f1c4 [poincare] Change Expression methods' signature to work with const char
* symbol instead of char symbol
2018-11-23 12:03:58 +01:00
Émilie Feral
cc9995d4c2 [poincare] Change getLinearCoefficients to take a variable-sized
variables as paramaters
2018-11-23 12:03:58 +01:00
Émilie Feral
05ce2386cd [poincare] Fix getPolynomialReducedCoefficients signature 2018-11-23 12:03:58 +01:00
Émilie Feral
5beafd2bf3 [poincare] Change Expression::getVariables to get symbols with variable
sizes
2018-11-23 12:03:58 +01:00
Émilie Feral
e1287a20bc [poincare] Fix Symbol 2018-11-23 12:03:58 +01:00
Émilie Feral
bc2ce86825 [poincare] Change signature: polynomialDegree,
getPolynomialCoefficients, getPolynomialReducedCoefficients
2018-11-23 12:03:58 +01:00
Émilie Feral
b6465ecba5 [poincare] Change replaceSymbolWithExpression signature
replaceSymbolWithExpression(char
symbol..)->replaceSymbolWithExpression(const char *..
2018-11-23 12:03:58 +01:00
Émilie Feral
540fab3908 [poincare] Symbol: first version with symbol of variable length 2018-11-23 12:03:58 +01:00
Émilie Feral
fdfa69a321 [poincare] Delete useless method 2018-11-23 12:03:58 +01:00
Léa Saviot
787f770a91 [poincare] Add "any symbol" parsing rule 2018-11-23 12:03:58 +01:00
Léa Saviot
522f5e781e [poincare] Function expression 2018-11-23 12:03:58 +01:00
Léa Saviot
3bbb8b39d1 [poincare] Add context argument to some ExpressionNode methods 2018-11-23 12:03:58 +01:00
Léa Saviot
1f4faff83e [poincare] Remove unused code 2018-11-23 12:03:58 +01:00
Émilie Feral
8287264503 [poincare] TreePool: allocation returns aligned address 2018-11-22 17:35:34 +01:00
Émilie Feral
c10c301d6d [poincare] Helpers: add a method to padd a size to a given alignment 2018-11-22 17:35:34 +01:00