Kasper
2ccf25affc
Improve formatting of numbers, closes #20
2023-03-30 01:06:13 +02:00
Kasper
4ac7e74c6b
Switch indentation to tabs
2022-09-12 00:47:20 +02:00
Kasper
1bb3819350
Use rustfmt for some files
2022-09-12 00:45:29 +02:00
Joel Natividad
a64081ac73
Apply select clippy recommendations ( #27 )
...
* Bump dependencies to minor version; 2021 edition
* apply clippy recommendations
* go back to match statement
* consolidate clippy allows
* pare down lints
- remove nursery level lints
- sort lints
* pared down lint allows
2022-09-11 23:37:01 +02:00
Kasper
87c10619b5
Add help menu
2021-07-03 02:51:03 +02:00
Kasper
cedc70af3a
Add --version flag
2021-07-03 02:09:28 +02:00
Kasper
ef4738061e
Freak out instead of ignoring unexpected arguments
2021-07-03 01:55:10 +02:00
Matthew Gamble
c545468b90
Print 'no argument supplied' message on STDERR
2021-07-03 09:07:25 +10:00
Kasper
e4fc479091
Fix numbers unnecessarily displayed in E notation
2021-06-10 21:36:14 +02:00
Kasper
c7ee968e6c
Allow --verbose in front of input
2021-04-21 21:11:05 +02:00
Kasper
ca273773ef
Rename --debug to --verbose and -v
2021-04-21 21:10:06 +02:00
joseLuís
1065d024dd
fix spelling: Celcius → Celsius
2021-01-14 17:12:11 +01:00
Kasper
a5aa85c1c0
Documented most things, small code improvements
2020-08-20 21:59:44 +02:00
Kasper
04e61cafd7
Now using lib.rs to fix "this crate is not a library" issue
...
Instead of just having main.rs, we now have lib.rs and then main.rs is just the CLI part
2020-08-20 14:23:54 +02:00
Kasper
ba2c1ce84e
Added cli/api installation and usage to readme
2020-08-20 10:29:57 +02:00
Kasper
5830904a45
Added --debug flag, eval returns Result
2020-08-20 06:49:10 +02:00
Kasper
c7141e87ad
Added "degree" keyword with option to choose which unit that is
2020-01-14 13:53:06 +01:00
Kasper
22a5faa6be
Ignoring operators at the end (with option to disable)
2020-01-14 02:50:10 +01:00
Kasper
388825f9ac
Lexing of keywords now uses is_ascii_alphabetic instead of is_alphabetic
2020-01-13 15:50:54 +01:00
Kasper
5360318bfc
Added unit of pressure, improved lexer "post-fix" loop
...
Previously the lexer's post-fix loop was really weird, incrementing in the middle of the function. No more
2020-01-12 22:57:49 +01:00
Kasper
02e74806e1
Support for using "in" as To operator (like "5in in cm")
2020-01-12 03:03:26 +01:00
Kasper
0758611dfb
Added lexing of energy and speed units
2020-01-11 04:31:30 +01:00
Kasper
6ac025850d
Added implicative multiplication, like 2pi
2020-01-06 18:50:33 +01:00
Kasper
1e00714cf0
Sped up sin/cos/tan by calculating factorials using match statement
2019-12-28 06:34:53 +01:00
Kasper
26992c9e32
Evaluation of sin, cos, tan
2019-12-28 06:31:50 +01:00
Kasper
ce74ce83a0
Evaluation of round, ceil, floor, abs
2019-12-25 23:58:50 +01:00
Kasper
5286bec0dd
Evaluation of multiply, divide, modulo, caret, percent, factorial
2019-12-23 01:24:15 +01:00
Kasper
8fcd76a098
Evaluation of plus and minus
2019-12-22 21:35:58 +01:00
Kasper
c247b6c899
Added length units and support for multi-word units
2019-12-21 21:36:39 +01:00
Kasper
a4db9df058
Added units
2019-12-21 16:49:37 +01:00
Kasper
3587cb94a9
Added parser with most things supported
2019-12-15 20:27:17 +01:00
Kasper
8c156fcf15
Lexer determines if % is percent or modulo & wraps input in parens
2019-12-14 22:12:02 +01:00
Kasper
f7a5481268
to/of operators, auto insert parens
2019-12-12 22:25:08 +01:00
Kasper
62262fbb1f
Lexer support for a bunch of math functions
2019-12-09 04:28:38 +01:00
Kasper
424e6988e9
Lexer supports multi-byte utf8 characters and "pi", "π" and "e"
2019-12-09 03:36:02 +01:00
Kasper
1fe9214a62
Put lexer into it's own file
2019-12-09 00:31:34 +01:00
Kasper
47768ee208
Better error handling
2019-12-08 23:02:26 +01:00
Kasper
8e2a3ff4d7
Number parsing
2019-12-08 21:04:35 +01:00
Kasper
f83c0ce59d
Started work on custom lexer
2019-12-08 15:17:15 +01:00
Kasper
4281aa97a9
cargo init
2019-12-06 16:16:29 +01:00