Commit Graph

274 Commits (2f2c005c865aea1d1ff20f9ad72c839764329f78)

Author SHA1 Message Date
Mark 241bb572a5
Added linelocation to all errors 2023-07-28 15:01:36 -07:00
Mark a489eec482
Minor optimization 2023-07-28 11:41:25 -07:00
Mark 7b77c49ba4
Fixed unit matching 2023-07-28 10:33:51 -07:00
Mark 7fb0e0274c
Minor cleanup 2023-07-28 10:04:56 -07:00
Mark a76af3c69a
Comments 2023-07-28 09:37:10 -07:00
Mark be043af4f0
Cleaned up a few panic!()s 2023-07-28 09:36:25 -07:00
Mark 185b0415ff
Fixed unit matching 2023-07-28 09:28:08 -07:00
Mark 625be634bf
Added a test 2023-07-28 09:21:59 -07:00
Mark dfb1772a45
Updated help commands 2023-07-28 08:25:58 -07:00
Mark 41bf1954a1
Fixed variable parse order 2023-06-17 22:15:58 -07:00
Mark 1671bbbade
Error tweak 2023-06-17 19:39:45 -07:00
Mark 73049eeec4
Cleanup 2023-06-17 19:08:05 -07:00
Mark 1495dcd561
Renamed token and pretoken 2023-06-16 12:58:06 -07:00
Mark 081dc1b7ab
fixed tests 2023-06-14 21:11:00 -07:00
Mark 6bd7043971
Added define operator 2023-06-14 20:18:28 -07:00
Mark b6343db0d6
Cleaned up evaluator 2023-06-14 19:54:28 -07:00
Mark 4dfaf2b863
Fixed trig functions 2023-06-14 19:34:57 -07:00
Mark 00a421756d
Reorganized variable code 2023-06-14 16:15:51 -07:00
Mark 5ffad0cc4e
Improved history storage 2023-06-14 14:36:58 -07:00
Mark 2dec478b74
Added "ans" variable 2023-06-14 14:04:32 -07:00
Mark f762817e4a
Improved unit tostring 2023-06-14 12:38:26 -07:00
Mark 89c7d1d50b
Edited help message 2023-06-14 09:43:09 -07:00
Mark 061f58ba53
Added nounit and tobase functions 2023-06-14 09:24:34 -07:00
Mark 24b221bf42
Added "per" division 2023-06-14 08:59:06 -07:00
Mark 3acfc7ebfd
Reworked unit prefixes 2023-06-13 21:18:00 -07:00
Mark 078fc12c5e
Minor cleanup 2023-06-13 20:15:20 -07:00
Mark 9fdabb80d3
Added constant generation 2023-06-13 20:15:10 -07:00
Mark a6bcbd5f66
Added no_space parameter for units 2023-06-13 09:13:24 -07:00
Mark 4f8ee660d7
Added build script to generate units 2023-06-12 15:01:44 -07:00
Mark 28c1a84b80
Fixed variable names 2023-06-11 16:52:23 -07:00
Mark 91b2361f28
Fixed compound unit conversion 2023-06-11 16:44:44 -07:00
Mark e816cea236
Fixed unit multiplication prettyprint 2023-06-11 15:16:00 -07:00
Mark 7382627041
Fixed mph/mpg behavior 2023-06-11 15:05:17 -07:00
Mark a87d2a9bf2
Minor import edits 2023-06-11 14:24:51 -07:00
Mark 368c178ddc
Evaluate module cleanup 2023-06-11 14:24:43 -07:00
Mark af2eb39fd5
Restructured packages 2023-06-11 13:53:45 -07:00
Mark 813c1e7292
Fixed a minor bug 2023-06-11 10:39:52 -07:00
Mark dedb192d54
Cleanup 2023-06-11 10:39:46 -07:00
Mark 67a03d53df
Added tests 2023-06-07 15:23:29 -07:00
Mark fe58addcc2
Added command-line argument parsing 2023-06-07 15:21:48 -07:00
Mark dae76f3d56
Added check for negative powers 2023-06-07 15:21:36 -07:00
Mark a7e1a5a69f
Edited help message 2023-06-07 15:01:16 -07:00
Mark ed82e7f17b
Centered greeter 2023-06-07 14:52:02 -07:00
Mark 4eff57c273
Error message edits 2023-06-07 14:43:05 -07:00
Mark c73bec0c13
Added simple commands 2023-06-07 14:38:22 -07:00
Mark 156b94c937
Whitespace 2023-06-07 14:37:23 -07:00
Mark 03d081fe06
Removed greeter 2023-06-07 09:19:02 -07:00
Mark f1a4cc0072
Cleaned up tests 2023-06-07 09:18:08 -07:00
Mark 102e619d1a
Minor edits 2023-05-15 10:05:46 -07:00
Mark 356a3c7824
More units 2023-04-14 11:05:25 -07:00
Mark 0cb171cde1
Added volume units 2023-04-14 09:28:39 -07:00
Mark b2a809ea8b
Added more units 2023-04-13 20:11:20 -07:00
Mark 76ac7be050
Added units 2023-04-13 14:10:45 -07:00
Mark 5de314e11c
Fixed unit conversion 2023-04-13 13:36:10 -07:00
Mark 3948f10bd7
Added prefix-generating macros 2023-04-13 11:33:51 -07:00
Mark 78b0262f61
Rearranged files 2023-04-13 09:21:53 -07:00
Mark e2d49c5fb6
Cleaned up variable names 2023-04-13 09:11:20 -07:00
Mark 84d2d68aa1
Added conversion between prefixed units 2023-04-13 09:01:18 -07:00
Mark 14ab0bd1d8
Renamed `sec` to `secant` 2023-04-13 08:06:35 -07:00
Mark 475d0e7c07
Minor cleanup 2023-04-13 08:06:04 -07:00
Mark 1f0f7e0ac9
Added prefix foundation 2023-04-13 08:05:52 -07:00
Mark 600c5f76cc
Added unit conversion prototype 2023-04-11 11:48:15 -07:00
Mark 7ecdfae6fc
Minor bug 2023-04-11 11:32:42 -07:00
Mark 0497cd810d
Fixed unit powers 2023-04-11 09:05:37 -07:00
Mark 0ca7705122
Cleanup 2023-04-11 08:56:39 -07:00
Mark 84f2d6e30c
Unit cleanup 2023-04-11 08:21:30 -07:00
Mark 175261b5c0
Compound unit foundation 2023-04-10 21:03:16 -07:00
Mark ad3ae83c66
Improved evaluator errors 2023-04-10 18:53:35 -07:00
Mark 6ce4451db7
Added unit errors 2023-04-10 18:47:00 -07:00
Mark fbc0a6557e
Cleanup 2023-04-10 18:46:46 -07:00
Mark b21104713f
Disabled a few tests 2023-04-10 14:12:16 -07:00
Mark e2fd61a2ef
Improved unit printing 2023-04-10 14:02:11 -07:00
Mark 775d85b170
Fixed tests 2023-04-10 14:02:01 -07:00
Mark 3007d7f875
Merge branch 'master' of ssh://git.betalupi.com:33/Mark/daisy 2023-04-10 12:49:09 -07:00
Mark 0f04a42dcb
Added tests 2023-04-10 12:48:36 -07:00
Mark ae05ebb5ff
Cleanup, added to_string_outer 2023-04-10 11:10:27 -07:00
Mark a38293c247
Added unit fromstring 2023-04-09 08:39:36 -07:00
Mark e9645208d9
Improved unit printing 2023-04-09 08:39:22 -07:00
Mark d4b7f5b078
Improved unit printing 2023-04-08 20:48:49 -07:00
Mark e9d4ec0b12
Cleanup 2023-04-08 20:40:35 -07:00
Mark fb9cc03bb9
Reorganized quantity 2023-04-08 20:26:07 -07:00
Mark 5b8dd2f703
Added basic units (incomplete) 2023-04-08 16:47:47 -07:00
Mark 10f706582e
Fixed configuration 2023-04-08 10:51:22 -07:00
Mark 1e04b15b46
Added comments 2023-04-07 20:55:23 -07:00
Mark 8982b3b118
rug types are only used if we're on unix 2023-04-07 20:52:18 -07:00
Mark e0f36ce112
Added conditional compilation for os type 2023-04-07 20:36:55 -07:00
Mark 0e155c2b52
Moved tests 2023-04-07 18:16:22 -07:00
Mark e4667eb998
Reorganized quantities 2023-04-07 18:11:20 -07:00
Mark 0bc1817e5b
Cleanup 2023-04-07 11:38:54 -07:00
Mark 24a07c1af0
Fixed treeify 2023-04-07 11:38:16 -07:00
Mark 77157925fe
Improved tests 2023-04-07 09:42:50 -07:00
Mark dd9633d822
Strict printing for powers 2023-04-07 09:42:43 -07:00
Mark 82b577568c
Fixed unary + at start 2023-04-07 09:37:39 -07:00
Mark 9b099bb408
Fixed decimal parsing 2023-04-07 09:33:55 -07:00
Mark 88078fea5a
Fixed unary "+" bug 2023-04-07 09:27:15 -07:00
Mark aeacd8746d
Fixed negation 2023-04-07 08:46:44 -07:00
Mark b6acbcee6b
Cleanup 2023-04-06 10:31:02 -07:00
Mark a3ada7c70c
Fixed operator printing 2023-04-06 10:30:50 -07:00
Mark f112326620
Added support for unary + 2023-04-06 09:51:14 -07:00
Mark 0e693ffcd6
Split tokens.rs 2023-04-06 09:41:03 -07:00
Mark c3686172cd
Improved operator ordering 2023-04-06 09:35:52 -07:00
Mark aa90d798c9
Fixed prompt cursor adjustment 2023-04-04 10:22:32 -07:00
Mark 038bbc5fde
Fixed minus printing 2023-04-02 08:27:21 -07:00
Mark d3d13a64ff
Minor changes 2023-04-01 19:05:40 -07:00
Mark 85a669e126
Added support for scientific notation 2023-04-01 18:29:01 -07:00
Mark 52a508cd98
Groupify refactor 2023-04-01 18:28:31 -07:00
Mark f07ba9ed38
Minor fixes 2023-04-01 18:27:47 -07:00
Mark cb227d9539
Fixed quantity printing 2023-04-01 18:26:30 -07:00
Mark bb200548f1
Reworked lookback 2023-04-01 16:43:58 -07:00
Mark e0210a8f09
Cleanup 2023-04-01 16:43:33 -07:00
Mark 047c900193
Fixed missing sign print 2023-04-01 16:43:26 -07:00
Mark 5792bbcea9
typo 2023-04-01 15:43:12 -07:00
Mark bb48a09cc7
Added decimal -> rational parsing 2023-04-01 14:20:11 -07:00
Mark f97805b24e
Disabled a few broken tests 2023-04-01 14:19:21 -07:00
Mark a38f68cd84
Added Quantity type 2023-04-01 13:50:52 -07:00
Mark 2834c20c57
Added functions 2023-03-29 19:03:58 -07:00
Mark de8c461a7b
Improved printing 2023-03-29 19:03:53 -07:00
Mark 3126b4c616
Added sin function and expression printing 2023-03-29 10:40:33 -07:00
Mark 3d5dcf0694
Minor cleanup 2023-03-29 10:39:15 -07:00
Mark 0049b32670
Fixed cursor overflow 2023-03-29 10:01:05 -07:00
Mark a90c00c18d
Added basic math error checking 2023-03-28 14:36:53 -07:00
Mark eb101439d9
fixed substitutions 2023-03-28 13:31:40 -07:00
Mark 7a9876ddd2
Cleaned up tests 2023-03-28 10:46:46 -07:00
Mark 71d9aaa039
Added square root, fixed many parser bugs 2023-03-28 10:46:29 -07:00
Mark 6db5137b56
Cleaned up code 2023-03-28 09:35:49 -07:00
Mark bcb90b503d
Added cursor to promptbuffer 2023-03-27 22:13:14 -07:00
Mark 56521cbbcd
Added ** exponentiation 2023-03-27 21:25:16 -07:00
Mark 1996693008
Rewrote parser 2023-03-27 21:22:29 -07:00
Mark b3e0cd6699
Added version string 2023-03-27 10:59:11 -07:00
Mark 701c8435fb
Added a few more tests 2023-03-27 10:56:48 -07:00
Mark 4eb476c2b7
Fixed unary operators 2023-03-27 10:55:14 -07:00
Mark d2f03976f8
Fixed negative syntax bug 2023-03-27 10:55:06 -07:00
Mark 1774c105f4
Fixed oop bug 2023-03-27 10:54:57 -07:00
Mark fd0ddb72ab
Added tests 2023-03-27 10:54:36 -07:00
Mark 1794042514
Restructured code 2023-03-27 09:47:02 -07:00
Mark ca35c8d9e9
Fixed power associativity 2023-03-26 12:15:36 -07:00
Mark 47e8a021f9
Cleanup 2023-03-26 12:13:37 -07:00
Mark a40ebb7500
Treeify now handles both left- and right-associative operators 2023-03-26 12:13:08 -07:00
Mark c92670c918
Constant changes 2023-03-26 10:18:39 -07:00
Mark 8a58d2182a
Fixed another tokenize bug 2023-03-26 10:15:15 -07:00
Mark b71cbcafcd
Fixed negative bug 2023-03-26 09:54:25 -07:00
Mark b8e736af45
Branding 2023-03-25 21:38:59 -07:00
Mark 39c52782ca
Improved error formatting 2023-03-25 20:47:33 -07:00
Mark c167196809
Fixed syntax error location 2023-03-25 20:10:31 -07:00
Mark 75d01adf02
Added greeting 2023-03-25 12:14:05 -07:00
Mark 8edfb70fb8
Fixed a minor bug 2023-03-25 10:35:43 -07:00
Mark 3fe51ffaed
Cleanup 2023-03-25 10:32:56 -07:00
Mark f3b86c3c7a
Added prompt replacement 2023-03-25 10:32:51 -07:00
Mark 3e1fa97ce8
Cleanup 2023-03-25 09:54:07 -07:00
Mark d0d051d616
Added more token methods 2023-03-25 09:40:08 -07:00