1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-12-22 15:30:09 -08:00
Commit Graph

570 Commits

Author SHA1 Message Date
0263086e10 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
c9fad36d16 Fix bug causing an NPE when sqrt() was called. 2017-07-27 19:30:40 -07:00
2cc4bd14ce Switch all uses of *List, *Map to just List and Map. 2017-07-27 18:19:12 -07:00
f119f19c04 Make pow an operator, represented by caret. 2017-07-27 16:55:18 -07:00
65772c8d57 Fix function argument order. 2017-07-27 16:52:16 -07:00
bbbb2e855e Fix typo. 2017-07-27 16:37:54 -07:00
8a29019852 Add ignoring whitespace and fix function precedence. 2017-07-27 16:36:13 -07:00
0d7a416446 Add a missing comment. 2017-07-27 16:27:26 -07:00
167e13cfe1 Merge branch 'master' of github.com:DanilaFe/abacus 2017-07-27 15:28:21 -07:00
b0ae3f90fc Add sanitization to TreeBuilder. 2017-07-27 15:26:02 -07:00
a7c2084254 Remove backslashes that will be obsolete. 2017-07-27 15:02:13 -07:00
rileyJones
bf6f48bf82 Jar Plugin Loader 2017-07-27 14:33:08 -07:00
f7da896fc0 Fix several bugs and register operations as operations. 2017-07-27 14:15:45 -07:00
6813643b15 Merge branch 'plugins' 2017-07-27 14:08:40 -07:00
e6cb755ec9 Merge branch 'master' of github.com:DanilaFe/abacus 2017-07-27 14:08:31 -07:00
2ca23fd427 Implement correct plugin loading and registration. 2017-07-27 14:06:57 -07:00
efbd6a4c20 Add missing return documentation. 2017-07-27 14:06:25 -07:00
a211884499 Prevent operation lookups, as they pollute the cache. 2017-07-27 14:06:15 -07:00
f2c280766d Add a PluginListener type for use in the PluginManager. 2017-07-27 14:06:04 -07:00
Arthur Drobot
088a45cf4c Add sqrt function. 2017-07-27 13:47:51 -07:00
Arthur Drobot
557bc66e53 Begin working on memoization for factorial. (Commented out for now.) 2017-07-27 13:39:19 -07:00
e6559015b3 Rename load to onLoad and add onDisable to plugin. 2017-07-27 13:26:17 -07:00
f931b9f322 Move parsing code into TreeBuilder, change lexing and parsing algorithms 2017-07-27 13:25:57 -07:00
Arthur Drobot
9666ef9019 Add pow function. 2017-07-27 13:17:22 -07:00
Arthur Drobot
ba30227b28 Add natural log function. May not be terribly efficient currently, but it works and is usable. 2017-07-27 13:04:41 -07:00
78e2d50f89 Add comments and clear appropriate cache. 2017-07-27 10:58:11 -07:00
07dd9d0a1a Support removing expressions. 2017-07-27 10:54:11 -07:00
ee1de6dc17 Add the operator that had been in use by Plugin and PluginManager. 2017-07-27 10:53:56 -07:00
077a34c618 Switch Lexer to use a map for patterns, to allow for removal. 2017-07-27 10:47:11 -07:00
79e85832ce Add operator map to Plugin class, and use it in PluginManager. 2017-07-27 10:38:18 -07:00
Arthur Drobot
ea5a7a9558 Increase precision of NaiveNumber to 18. 2017-07-27 10:32:09 -07:00
Arthur Drobot
3e52a9d645 Modify exp to work properly with the new changes and support all reals. 2017-07-27 10:16:38 -07:00
Arthur Drobot
7a0fa31cad Merge branch 'master' of https://github.com/DanilaFe/abacus 2017-07-27 10:07:07 -07:00
Arthur Drobot
aec37b6720 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
189f8c6e15 Move OperatorAssociativity into the function class. 2017-07-27 09:33:01 -07:00
e8595510b8 Remove the caret operator as it is not implemented. 2017-07-27 09:23:07 -07:00
b09c9c3cb2 Remove unnecessary getType() calls. 2017-07-27 09:22:24 -07:00
b0a7c90aa1 Fix strangely incomplete comment. 2017-07-26 19:28:57 -07:00
cf95ed7dc0 Add comments to NumberReducer and FunctionNode. 2017-07-26 19:16:10 -07:00
bc72b4da8a Comment and clean up the Window class. 2017-07-26 19:10:55 -07:00
15d7dbd30e Comment and clean up HistoryTableModel code. 2017-07-26 19:04:39 -07:00
c8146954c3 Implement reducing functions. 2017-07-26 18:44:30 -07:00
d18e27bdb4 Implement parsing functions. 2017-07-26 18:44:17 -07:00
c4eb70999b Add correct handling of failed reduces to both OpNode and Window. 2017-07-26 18:41:21 -07:00
4a8164631f Merge branch 'master' into ui-touchup 2017-07-26 17:27:05 -07:00
d7caf1cdc7 Implement toString in child nodes of TreeNode. 2017-07-26 17:26:55 -07:00
8754871556 Make some operator-related fields protected in TreeNode.
This should allow for the implementation of toString in child nodes.
2017-07-26 17:26:42 -07:00
b31c1f9624 Change default calculator width. 2017-07-26 17:19:43 -07:00
2b7a68e179 Rename some variables to more appropriate names. 2017-07-26 17:18:40 -07:00
e06feaa581 Separate UI into tabbed panes, and change layout of side panel. 2017-07-26 17:17:21 -07:00