1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-07-09 01:56:54 -07:00
Commit Graph

276 Commits

Author SHA1 Message Date
rileyJones
408c4f0379 Add external plugin support 2017-07-28 11:17:54 -07:00
c1bf308d6d Rename OpNode to BinaryInfixNode. 2017-07-28 11:15:36 -07:00
51f2c15542 Implement unary operators. 2017-07-28 11:14:45 -07:00
082b2f8783 Add operator types. 2017-07-28 10:26:25 -07:00
7755a04bd7 Add rounding to naive number. 2017-07-28 09:57:39 -07:00
1d7134e7f3 Make the decimal matching optional. 2017-07-28 09:52:14 -07:00
c350c24f62 Add link nodes to collections and check for their presence.
This prevents infinite loops, as Link nodes do not follow regular
addInto behavior.
2017-07-28 09:51:59 -07:00
df0b1829ff Fix bug causing an NPE when sqrt() was called. 2017-07-27 19:30:40 -07:00
d9df565a42 Switch all uses of *List, *Map to just List and Map. 2017-07-27 18:19:12 -07:00
bc23b8dbda Make pow an operator, represented by caret. 2017-07-27 16:55:18 -07:00
65a6265cf6 Fix function argument order. 2017-07-27 16:52:16 -07:00
edbef67b8a Fix typo. 2017-07-27 16:37:54 -07:00
5373d953a6 Add ignoring whitespace and fix function precedence. 2017-07-27 16:36:13 -07:00
692ba2cdc5 Add a missing comment. 2017-07-27 16:27:26 -07:00
029acb7747 Merge branch 'master' of github.com:DanilaFe/abacus 2017-07-27 15:28:21 -07:00
96b09fdf2e Add sanitization to TreeBuilder. 2017-07-27 15:26:02 -07:00
d2b27da528 Remove backslashes that will be obsolete. 2017-07-27 15:02:13 -07:00
rileyJones
7b3df49422 Jar Plugin Loader 2017-07-27 14:33:08 -07:00
381c88f7a0 Fix several bugs and register operations as operations. 2017-07-27 14:15:45 -07:00
5c9c718283 Merge branch 'plugins' 2017-07-27 14:08:40 -07:00
b84ca8a121 Merge branch 'master' of github.com:DanilaFe/abacus 2017-07-27 14:08:31 -07:00
f00ad25d6a Implement correct plugin loading and registration. 2017-07-27 14:06:57 -07:00
de3feae3b6 Add missing return documentation. 2017-07-27 14:06:25 -07:00
15e42126b5 Prevent operation lookups, as they pollute the cache. 2017-07-27 14:06:15 -07:00
4f9c8dee9a Add a PluginListener type for use in the PluginManager. 2017-07-27 14:06:04 -07:00
Arthur Drobot
8fb82e1fb8 Add sqrt function. 2017-07-27 13:47:51 -07:00
Arthur Drobot
22f8a48195 Begin working on memoization for factorial. (Commented out for now.) 2017-07-27 13:39:19 -07:00
f29fea6106 Rename load to onLoad and add onDisable to plugin. 2017-07-27 13:26:17 -07:00
7d822a3e77 Move parsing code into TreeBuilder, change lexing and parsing algorithms 2017-07-27 13:25:57 -07:00
Arthur Drobot
950e3503b7 Add pow function. 2017-07-27 13:17:22 -07:00
Arthur Drobot
18a5a99887 Add natural log function. May not be terribly efficient currently, but it works and is usable. 2017-07-27 13:04:41 -07:00
4eff4760e5 Add comments and clear appropriate cache. 2017-07-27 10:58:11 -07:00
87c51f279a Support removing expressions. 2017-07-27 10:54:11 -07:00
663562bab1 Add the operator that had been in use by Plugin and PluginManager. 2017-07-27 10:53:56 -07:00
586cd90e32 Switch Lexer to use a map for patterns, to allow for removal. 2017-07-27 10:47:11 -07:00
b5ff2c1c2b Add operator map to Plugin class, and use it in PluginManager. 2017-07-27 10:38:18 -07:00
Arthur Drobot
c15b737738 Increase precision of NaiveNumber to 18. 2017-07-27 10:32:09 -07:00
Arthur Drobot
ea648b38e7 Modify exp to work properly with the new changes and support all reals. 2017-07-27 10:16:38 -07:00
Arthur Drobot
c426cdb892 Merge branch 'master' of https://github.com/DanilaFe/abacus 2017-07-27 10:07:07 -07:00
Arthur Drobot
e04caee942 Add absolute value function to standard plugin. Modify getNTermsExp to work on negative exponents instead (and correctly). 2017-07-27 10:03:26 -07:00
dea25bbc9c Move OperatorAssociativity into the function class. 2017-07-27 09:33:01 -07:00
0b8d2b0459 Remove the caret operator as it is not implemented. 2017-07-27 09:23:07 -07:00
eef83a04aa Remove unnecessary getType() calls. 2017-07-27 09:22:24 -07:00
cc1d67a078 Fix strangely incomplete comment. 2017-07-26 19:28:57 -07:00
ba3a733928 Add comments to NumberReducer and FunctionNode. 2017-07-26 19:16:10 -07:00
49f6f2d21e Comment and clean up the Window class. 2017-07-26 19:10:55 -07:00
1b788c0a46 Comment and clean up HistoryTableModel code. 2017-07-26 19:04:39 -07:00
d54ec9e8fa Implement reducing functions. 2017-07-26 18:44:30 -07:00
e8d9836431 Implement parsing functions. 2017-07-26 18:44:17 -07:00
12e34230ec Add correct handling of failed reduces to both OpNode and Window. 2017-07-26 18:41:21 -07:00