Commit Graph

127 Commits

Author SHA1 Message Date
Danila Fedorin ac17246317 Fix bug causing incorrect parsing of inputs with negative signs. 2018-01-30 21:10:02 -08:00
Danila Fedorin 251d0fc2c5 Make sure the set and define operators have the lowest precedence. 2018-01-16 00:14:46 -08:00
Danila Fedorin af988a34d1
Merge branch 'master' into definition-files 2017-11-23 21:45:41 -08:00
Danila Fedorin 50cc51d089 Load definition files. 2017-11-23 20:45:24 -08:00
Danila Fedorin 9fdb3fc0d9 Add an additional, restricted type of context for use only by plugins. 2017-11-23 13:29:06 -08:00
Danila Fedorin 7c252fddf1
Merge branch 'master' into plugin-conversions 2017-11-14 23:13:51 -08:00
Danila Fedorin 92489551ca Move all the number reducer functionality into the context. 2017-11-14 23:03:12 -08:00
Danila Fedorin 2a9026f748 Add and use isInteger function where appropriate. 2017-11-03 21:41:46 -07:00
Danila Fedorin 6a0b667c32 Replace some recent android API features with backwards compatible ones. 2017-09-24 12:58:33 -07:00
Danila Fedorin 378ff946d9 Add a Transformation class that replaces java.util.function use 2017-09-24 00:29:43 -07:00
Danila Fedorin 0511c58b13 Remove the Pattern's dependency on java.util.function 2017-09-24 00:12:25 -07:00
Danila Fedorin e82a13cde5 Move ClassFinder to the fx module, which is the only place it's used. 2017-09-24 00:01:43 -07:00
Danila Fedorin c990d4c50a More around files into more applicable packages. 2017-09-23 23:43:08 -07:00
Danila Fedorin e05b2ac8d5 Move the StandardPlugin into a "standard" package along with the ops. 2017-09-23 22:16:44 -07:00
Danila Fedorin b4214f5714 Rewrite the parsing interfaces in Kotlin. 2017-09-23 17:14:55 -07:00
Danila Fedorin bd02749706 Move all the operators into a separate subpackage. 2017-09-23 17:13:56 -07:00
Danila Fedorin f809183126 Move some more operators out of StandardPlugin.java to separate classes 2017-09-23 17:11:44 -07:00
Danila Fedorin 579ff78a99 Move two more operators into separate classes. 2017-09-23 16:19:45 -07:00
Danila Fedorin 81d0999c11 Switch the basic operators into individual classes. 2017-09-23 15:54:28 -07:00
Danila Fedorin 4fd8f7badf Add operator overloading. 2017-09-23 15:54:28 -07:00
Danila Fedorin bc475a22f9 Rewrite NumberInterface in Kotlin. 2017-09-23 15:54:28 -07:00
Danila Fedorin ea4588be44 Add more descriptive message to context exceptions. 2017-09-23 15:43:07 -07:00
Danila Fedorin 31996219ad Switch the Lexer and TreeBuilder to using exceptions. 2017-09-23 15:31:35 -07:00
Danila Fedorin a3bfc34c1c Throw parse exceptions instead of returning null. 2017-09-22 16:35:08 -07:00
Danila Fedorin 8dc7acd4b3 Add a separate class of exceptions for NumberReducer. 2017-09-22 11:58:19 -07:00
Danila Fedorin 76fcd8ec1c Remove unused elvis. 2017-09-21 23:17:45 -07:00
Danila Fedorin fbdf2c7e52 Eliminate warnings related to null returns that have been removed. 2017-09-21 23:09:13 -07:00
Danila Fedorin 3057f66e66 Throw the exception instead of returning null. 2017-09-21 23:05:48 -07:00
Danila Fedorin fd3f56aa8f Write some tests for the Ranges. 2017-09-20 15:23:17 -07:00
Danila Fedorin e364f4e94b Have the NumberInterface provide the Kotlin rangeTo method. 2017-09-20 13:22:18 -07:00
Danila Fedorin 4c94abb18b Create the NumberRangeBuilder utility class. 2017-09-20 13:19:55 -07:00
Danila Fedorin ba63dd7874 Implement a range that works for NumberInterfaces. 2017-09-20 13:04:20 -07:00
Danila Fedorin eb91a5b875 Fix a bug that made some same-priority implementations not convert. 2017-09-20 12:47:30 -07:00
Danila Fedorin 566831246c Add an exception thrown when promotion fails. 2017-09-20 12:06:06 -07:00
Danila Fedorin f6e326e0f1 Revert "Remove unnecessary nullability from parseString."
88e3bb7109
2017-09-16 03:02:35 -07:00
Danila Fedorin 14ac9c67f4 Implement the comparable interface. 2017-09-16 00:18:43 -07:00
Danila Fedorin 88e3bb7109 Remove unnecessary nullability from parseString. 2017-09-16 00:16:48 -07:00
Danila Fedorin 540e5d6099 Load default implementation if one is not found. 2017-09-16 00:16:32 -07:00
Danila Fedorin 337edd68fa Merge branch 'master' into thread-safety 2017-09-15 22:58:33 -07:00
Danila Fedorin 5b4773dee1 Do not use null in exceptions and add messages to exceptions. 2017-09-11 19:32:57 -07:00
Danila Fedorin 45de25cd50 Move exceptions to their own package and subclass one class. 2017-09-11 19:32:57 -07:00
Danila Fedorin 52ab357fe1 Remove nullability from reduction. 2017-09-11 19:32:57 -07:00
Danila Fedorin 1575d3e574 Remove nullability from tree nodes. 2017-09-11 19:32:57 -07:00
Danila Fedorin 87529da15f Precompute all the transitions ahead of time. 2017-09-11 19:32:51 -07:00
Danila Fedorin 7cd117dac1 Add synchronization to the Standard plugin. 2017-09-11 19:32:51 -07:00
Danila Fedorin 8975bfdb99 Precompute Pi, and do not store documentation on access. 2017-09-11 19:32:51 -07:00
Danila Fedorin 1667edc72b Merge branch 'master' into context 2017-09-11 19:14:07 -07:00
Danila Fedorin 5aba5c350b Add comments to the new configuration classes. 2017-09-11 18:15:40 -07:00
Danila Fedorin 21b7bd5e2b Move TOML code out of the configuration in core, and into fx. 2017-09-11 18:06:40 -07:00
Danila Fedorin f2ac7b109a Remove old imports. 2017-09-10 18:19:30 -07:00