Commit Graph

303 Commits

Author SHA1 Message Date
Romain Goyet
e8b7a9bd83 Poincare: Add an ExpressionBuilder class
Change-Id: I5865b712cfe1f8e1cd2e29d0d2b50be8182985b8
2016-03-26 18:47:08 +01:00
Romain Goyet
f81239fdb8 Poincare: Add an ExpressionSelector
Change-Id: I1ed0e2f3042f948d81d79b7b8ada00a3e838322b
2016-03-26 18:46:27 +01:00
Romain Goyet
bdb4aaace3 Merge branch 'master' of ssh://git.numworks.com:29418/CalcOS
Change-Id: Ic13da71a80ab823ee0b11f550ee359c4032edc36
2016-03-25 11:55:09 +01:00
Romain Goyet
c3b1089964 Transform SimplifyAdditionMerge into SimplifyCommutativeMerge
Change-Id: Iec477f6de5d51479370916336699a4ac91680ab4
2016-03-25 11:53:42 +01:00
Félix Raimundo
2744d942e1 Merge changes I44c1bed2,Ibcf1dd17,Id02daf67
* changes:
  Use proper english name for sine.
  Add parsing test for trigo functions.
  Horizontal layout finished.
2016-03-25 11:09:20 +01:00
Félix Raimundo
d7d00fefd7 Merge changes I6b4d6be5,Ie87dc145,I87e12b9c,I5d37ed0a,Ia52f38da
* changes:
  Update functions to use the clone interface.
  Horizontal layout
  Remove call to get_char to fix tests.
  Rename text_input to utils, add a util in it.
  Add the Function and trig functions classes and layout.
2016-03-25 11:09:17 +01:00
Felix Raimundo
144ec9d556 Use proper english name for sine.
Change-Id: I44c1bed203b126e0bd36be1efe00b7f5df9cff06
2016-03-24 18:40:41 +01:00
Felix Raimundo
46ffb55ec3 Add parsing test for trigo functions.
Change-Id: Ibcf1dd1759cd106521023f0c2adadc1f993f3eaa
2016-03-24 18:30:44 +01:00
Felix Raimundo
7f660ffbd5 Horizontal layout finished.
Change-Id: Id02daf672668d0c946e3008bdfd0e3f00d165864
2016-03-24 18:24:16 +01:00
Romain Goyet
b79e7483f4 Poincare: Adding SimplifyAdditionMerge
Change-Id: I6f922cce8178d5313a46d611e7ab166c52282127
2016-03-24 17:47:04 +01:00
Felix Raimundo
4707459a19 Update functions to use the clone interface.
Change-Id: I6b4d6be5b1d963bc7d97851432e40844d3619d8d
2016-03-24 16:54:53 +01:00
Felix Raimundo
f5f5399e92 Horizontal layout
Change-Id: Ie87dc14531e04b3577b691ae141d9b6a6d58a618
2016-03-24 16:09:25 +01:00
Felix Raimundo
11537ef794 Remove call to get_char to fix tests.
Change-Id: I87e12b9ce5fc807edfcf1460e419bceed23474dd
2016-03-24 16:09:25 +01:00
Felix Raimundo
3e632f5586 Rename text_input to utils, add a util in it.
Change-Id: I5d37ed0a3a21e7d62aa061a6b09f30065c4cd8a6
2016-03-24 16:09:25 +01:00
Felix Raimundo
d105236da9 Add the Function and trig functions classes and layout.
We create an abstraction for functions with the function class.

Change-Id: Ia52f38da2ab3fb6781ad77c1b909676c53a4f424
2016-03-24 16:09:25 +01:00
Romain Goyet
ed95a3c564 Poincare: Test the SimplifyAdditionInteger
Change-Id: Ic8146a509c0c6b3ace72900cbb9854d181783de7
2016-03-24 15:51:41 +01:00
Romain Goyet
c43211cb45 Poincare: Expression::isIdenticalTo
Change-Id: I4a28b5b771efc5a00f49aeaa725c264e87e96c88
2016-03-24 15:51:22 +01:00
Romain Goyet
32745b9fe4 Misc cleanups
Change-Id: Ie9b5c06a3db22109e92197e4627d72a16c6bf54a
2016-03-24 15:50:52 +01:00
Romain Goyet
202d110488 Add a BinaryOperation class
Parent of Fraction, Power, Subtraction

Change-Id: Ibb03e96062acd4870c5f10fe21eeea896a5927ec
2016-03-24 15:49:58 +01:00
Romain Goyet
aa3595ad54 Poincare: Add a LeafExpression class
Parent of Symbol, Integer, Float

Change-Id: I866ec888b007ea8e486f5627039f934bddcc9ace
2016-03-24 15:48:11 +01:00
Romain Goyet
59092a66df Remove an useless cast
Change-Id: Ice3227284b5f31c08e9b18fe4696e7910e2bd0bc
2016-03-24 13:53:21 +01:00
Romain Goyet
d50e245398 Poincare: Simplify Integer addition
Change-Id: Iedcdbe2ae20dd6fe648ca168fe80e3be5f2c31b8
2016-03-24 13:53:08 +01:00
Romain Goyet
0d7813dc7b Poincare: Expressions can now be cloned
Change-Id: I5a291c56dd031ec5e7aa6fbfe09823807f1b0e3c
2016-03-24 13:35:16 +01:00
Romain Goyet
ae3f087a95 Poincare: CommutativeOperation can take an expression of any length
Change-Id: Icf86134c9d3daf14636b073c8215a4e614d2b3f6
2016-03-24 13:10:41 +01:00
Romain Goyet
6edb36cef3 Poincare: Expression parsing shouldn't modify the string
Change-Id: I29bd1a81fa0b88b7151e3a79a47d287e9775b357
2016-03-24 13:09:54 +01:00
Romain Goyet
fe3667639f Merge "Poincare: Add a CommutativeOperation class" 2016-03-24 11:54:48 +01:00
Romain Goyet
657c4d8299 Merge "Poincare: Simplifier -> Simplify" 2016-03-24 11:54:45 +01:00
Romain Goyet
7b40c0a948 Merge "Poincare: Clean the Expression::Type" 2016-03-24 11:54:39 +01:00
Félix Raimundo
5e1edae4a9 Merge "Remove hardcoded font size." 2016-03-24 11:43:04 +01:00
Romain Goyet
3e5695de21 Poincare: Add a CommutativeOperation class
Change-Id: I420ff65050de513d7b7db94afed2e5bb9f044390
2016-03-24 11:42:08 +01:00
Romain Goyet
7f0a3f94bb Poincare: Simplifier -> Simplify
Change-Id: I1dfdf9e9d99ffd0ce604547b54c88263e621b97b
2016-03-24 10:39:00 +01:00
Romain Goyet
dfdaa54928 Poincare: Clean the Expression::Type
Change-Id: I3809a8b1b040314466554866555fb634c35156a5
2016-03-24 10:19:04 +01:00
Felix Raimundo
cb2bcb6ad9 Remove hardcoded font size.
Change-Id: I5fbd54467ec727bb3f93ecb75e03593d466e9b7b
2016-03-23 19:05:56 +01:00
Félix Raimundo
a18eac8059 Merge "Adds a text_input function to get text." 2016-03-23 18:55:13 +01:00
Romain Goyet
2f77d70369 Poincare: Product can now have more than two factors
Change-Id: Ia9d606e1a3a1649265fdcfe5e2ba8579e7fd7c7b
2016-03-23 17:52:26 +01:00
Felix Raimundo
fd95a7e558 Adds a text_input function to get text.
Also removes ion_getchar in favor of ion_get_event.

Change-Id: Id95ea509315185da24fd2a3fe90969da0bd19cfc
2016-03-23 17:31:59 +01:00
Romain Goyet
d3b0841af6 Poincare: Add a simplifier
Change-Id: Iac53c9b7dda5cb284fe750bb84c92ce5d1fba497
2016-03-23 17:24:11 +01:00
Romain Goyet
55a76ac530 No tabs for indentation
Change-Id: I824cf74288131283e798ca20fdf985a02a428921
2016-03-23 17:23:45 +01:00
Félix Raimundo
66ef3f1647 Merge "Final pass at removing the warnings." 2016-03-23 12:49:31 +01:00
Romain Goyet
35228e83af Define and use HOSTCC
Change-Id: If38c488233007e86c2e1e999861836a0ffbbf1e8
2016-03-23 12:35:25 +01:00
Felix Raimundo
411e983ccf Final pass at removing the warnings.
Change-Id: I4cd0276c97112e69fe2449c8db5eaaa1c186dfb6
2016-03-23 11:42:32 +01:00
Felix Raimundo
80ad6e606b Removed all warnings, now in Werror
Change-Id: I02dbd9fef2c1b5d6aba4ea713f1e1ea305b389bf
2016-03-22 18:56:00 +01:00
Felix Raimundo
d84e139954 Remove some warnings.
Change-Id: I5a856edc3ebc7ccb352865d62b2b12cdfc8426ca
2016-03-22 18:39:59 +01:00
Felix Raimundo
2ee147a48c Remove dead code in Makefiles
Change-Id: I57363da89a49443be7fad8f687299393bc0f3a82
2016-03-22 18:39:59 +01:00
Felix Raimundo
605dd9f372 Add memory_map for simulator.
Also use clang for the simulator building.

Change-Id: I87f5b938d9066375fbfabfdcdd3c5218c9790bb0
2016-03-22 18:39:59 +01:00
Felix Raimundo
9f9d05e822 Add the test output to the .gitignore
Change-Id: I8c7e6e277b05a0fd8ea305400818494637fb3cf1
2016-03-22 18:39:59 +01:00
Felix Raimundo
1f9b440182 Added some basic tests for the AST members.
Change-Id: I9a1f297fb72a57e9b58e3951c22066134c8da9ea
2016-03-22 18:39:59 +01:00
Felix Raimundo
3c514a78e0 Change Substraction to Subtraction.
Only changed the files name last time.

Change-Id: I85a809f9ea349e1bec771c61a18d4b5e9b491fdc
2016-03-22 18:39:59 +01:00
Felix Raimundo
5f86659bd3 Remove some dead code.
Change-Id: I62c0effa23db161f498b1a133ee6ab80e8e7d481
2016-03-22 18:39:59 +01:00
Felix Raimundo
fcca8e77f1 Add a test for products.
Change-Id: I479f4fa49bca62dd1d558c745a3b43f9ab55a72a
2016-03-22 18:39:59 +01:00