Commit Graph

134 Commits

Author SHA1 Message Date
f930242ee8 Properly report undefined sub-functions in replacement patterns 2019-01-30 21:47:00 +01:00
3a5ccdfc13 Keep track of sub-function identifier tokens for error reporting 2019-01-30 21:47:00 +01:00
bdb1fc738e Implement multiple error reporting and recovery in Parser 2019-01-30 21:47:00 +01:00
f0d2cdc1ab Implement multiple error reporting and recovery in Lexer 2019-01-29 12:08:35 +01:00
1e0d2e5a0e Create base class for DSL exceptions 2019-01-28 21:13:24 +01:00
1304755c25 Implement loading of DSL rules 2019-01-28 18:19:27 +01:00
c00b71e2ba Remove unneeded throws spec from PatternRule.execute 2019-01-27 21:18:53 +01:00
bea2eb67c8 Check that sub-functions in replacement patterns are defined 2019-01-27 21:18:53 +01:00
ba468d199a Add method to get sub-functions from patterns 2019-01-27 21:18:44 +01:00
591813402d Prevent instantiation of PatternUtils 2019-01-27 19:56:18 +01:00
a92c3a3272 Implement and test RulesDsl.makeRules 2019-01-27 19:24:49 +01:00
6ab69a1613 Implement and test Parser (with temporary error handling) 2019-01-27 19:24:49 +01:00
b959fac770 Implement equals (and hashCode) in PatternRule and patterns for testing 2019-01-27 19:24:49 +01:00
27b128a6ea Add single and multi-line comments 2018-11-23 18:52:36 +01:00
da91a5df33 Implement Lexer (with temporary error handling and basic tests) 2018-11-22 20:04:48 +01:00
61d40330be Define the representation for tokens 2018-11-22 19:59:30 +01:00
fa2b9f20a8 Define a temporarily empty RulesDsl.makeRules method
When complete, this method will execute the DSL front-end, and return
the list of rules, if successful, otherwise report errors.
2018-11-20 19:27:04 +01:00
26416dd8f8 Implement ConstantPattern 2018-11-20 19:07:34 +01:00
5238c32380 Implement Pattern-based Rule 2018-11-19 13:05:28 +01:00
101e90ad03 Remove EmptyNumber overload from FunctionVisitor 2018-11-19 10:49:33 +01:00
2ceca91acf Merge branch 'master' into rules-dsl 2018-11-19 10:38:34 +01:00
87151ed606 Fixed graphic glitches when changing screen 2018-10-23 17:28:05 +02:00
76d9d77e13 Extra 2018-10-16 22:26:05 +02:00
7e394a84bf Fix indentation 2018-10-16 21:55:24 +02:00
cd6768d608 Extra 2018-10-16 21:42:36 +02:00
21d8c37903 Handle RootSquare functions with RootPattern 2018-10-16 20:33:01 +02:00
6e5ed8ef94 Fixed buggy keyboard behavior 2018-10-16 20:03:12 +02:00
66a04607b3 Fix RootSquare equality with other RootSquare instances 2018-10-16 19:57:26 +02:00
b65723a2c6 Implement EquationsSystemPattern 2018-10-16 19:36:34 +02:00
c2dc02c0e1 Implement equals for EquationsSystem as ordered parameter equality 2018-10-16 19:33:44 +02:00
f7a7f6d200 Extra 2018-10-16 19:28:43 +02:00
53e2416426 Implement EquationPattern 2018-10-16 18:46:49 +02:00
2aeb396b53 Implement equals for Equation 2018-10-16 18:45:37 +02:00
38c8710929 Extra 2018-10-16 17:37:21 +02:00
1a51ae5698 Extra 2018-10-16 15:56:27 +02:00
1d4c2ec8a7 Removed useless dependencies 2018-10-15 23:10:44 +02:00
76985314d4 Removed useless files 2018-10-15 19:37:56 +02:00
971759a6e7 Updated pom.xml 2018-10-14 22:32:08 +02:00
5e1d1dde52 New extra features 2018-10-12 23:23:16 +02:00
b7407886dd Caching results 2018-10-12 23:20:12 +02:00
494f8e854f Fixed bugs in input handling 2018-10-09 23:51:42 +02:00
35d878fba7 Updated extra feature 2018-10-09 19:37:48 +02:00
b90faa13b8 Updated extra feature 2018-10-09 17:46:52 +02:00
95560e12b7 Implement UndefinedPattern 2018-10-06 19:14:24 +02:00
0ec3974f41 Implement patterns for most FunctionSingles 2018-10-06 18:41:32 +02:00
54fc13b211 Implement equals for trigonometric functions 2018-10-06 18:38:39 +02:00
2ca5a8391a Implement patterns for most FunctionOperators 2018-10-06 17:41:15 +02:00
0574744921 Create PatternUtils helper class 2018-10-06 16:47:03 +02:00
5e5a09ad83 Disabled debug mode for TeaVM 2018-10-06 16:37:44 +02:00
be5ae2d475 Add missing 'final' specifiers 2018-10-06 15:21:22 +02:00
21de6349f4 Use actual MathContext instead of null in Pattern replace 2018-10-06 15:21:22 +02:00
0afacf7ddc Implement NegativePattern 2018-10-06 15:21:22 +02:00
64553c86e7 Implement NumberPattern 2018-10-06 15:21:22 +02:00
5450d67497 Implement SumPattern 2018-10-06 15:21:22 +02:00
277589e7a9 Create VisitorPattern abstract base class 2018-10-06 15:21:22 +02:00
72de605659 Define FunctionVisitor and corresponding accept method 2018-10-06 15:21:22 +02:00
75fe857139 Implement SubFunctionPattern 2018-10-06 15:21:22 +02:00
d88f6a05f9 Define the Pattern interface and its core methods 2018-10-06 15:21:22 +02:00
3808613a58 Better history management 2018-10-05 22:09:54 +02:00
b11d8ea4ed Better history management 2018-10-05 16:00:15 +02:00
518bfc6c4a new method to clone the input screen 2018-10-05 08:33:29 +02:00
2a459b41f9 commit 2018-10-04 21:46:56 +02:00
2ea86cf76f Merge remote-tracking branch 'gogs/master' 2018-10-04 21:29:45 +02:00
1d0d622bb1 Added a missing break 2018-10-04 21:29:39 +02:00
b0637d308b Implemented history 2018-10-04 12:38:54 +02:00
a9395277c9 Updated block deletion behavior 2018-10-04 09:52:14 +02:00
658c5669f0 Updated block deletion handling 2018-10-04 08:49:11 +02:00
9f6eb9e549 Updated pom.xml 2018-09-29 02:11:24 +02:00
1374c5598e partial commit 2018-09-28 21:59:12 +02:00
91e79b1c03 Updated to java 11 2018-09-28 13:43:42 +02:00
60cb012f83 Code cleanup 2018-09-28 11:39:28 +02:00
5a65086421 Moved Flow library 2018-09-27 19:23:46 +02:00
5aa703c0cf Removed crappy headless graphic engine implementations 2018-09-27 17:41:31 +02:00
7f3f53c75c New picture 2018-09-22 14:18:57 +02:00
bd5260e0f3 Better parenthesis button behavior 2018-09-22 14:10:36 +02:00
b57ae900e5 Code cleanup 2018-09-22 11:17:30 +02:00
1b1cfa08fa Renamed graphic engine packages 2018-09-22 10:29:40 +02:00
248842727e Fixed keyboard keys 2018-09-15 18:10:42 +02:00
1e6218f6f1 Some keys in the keyboard were inverted 2018-09-15 18:03:15 +02:00
ba07692313 Moved StaticVars to Settings, moved other packages and organized imports 2018-09-12 22:16:58 +02:00
f57449c8d4 Changed version to v0.9 and fixed the button SURD_MODE 2018-09-11 19:36:02 +02:00
ada6e552f6 Fixed [^2] command and added GUI buttons to replace hardware ones on PCs 2018-09-11 19:19:24 +02:00
434ccb3a68 Better Graphic Engines management 2018-09-11 01:12:54 +02:00
899ca234ce Moved code into submodules 2018-09-04 12:12:41 +02:00