147 Commits

Author SHA1 Message Date
Gabriel Comte
2626ea5c56
Fix ideal unit: Light year (#35) 2023-07-11 00:27:18 +02:00
Kasper
2ccf25affc
Improve formatting of numbers, closes #20 2023-03-30 01:06:13 +02:00
Kasper
de79887331
Add marathon 2022-12-30 11:04:47 +01:00
Kasper
6ee30b867f
Remove comments 2022-09-12 00:47:48 +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
d3f1bf20ee
Remove trailing semicolon 2022-02-23 05:19:01 +01:00
Kasper
a86865e856 Fix implicit start/end parentheses 2021-08-16 06:32:40 +02:00
Kasper
d8af50d991
Merge pull request #23 from Pyther99/fix-clippy-lints
Fix clippy lints
2021-08-16 06:15:52 +02:00
Matthew Gamble
45dfe129dc
Add support for data rate units
This permits the following calculations:

10 kilobytes per second * 6 seconds = 60 kilobytes
500 megabytes / 100 megabytes per second = 5 seconds
1 gibibit per second * 1 hour = 3600 gibibits
2021-07-25 10:36:04 +10:00
Matthew Gamble
4d8e802520
Support dividing lengthes by speed
The result has a unit of time.
2021-07-17 13:39:53 +10:00
Pyther99
6b46d69c72 remove usage of matches! macro 2021-07-14 20:55:05 +02:00
Pyther99
07bf7b48e1 Remove cmp comparison 2021-07-14 07:50:20 +02:00
Pyther99
634dff682b more idiomatic syntax 2021-07-13 19:55:42 +02:00
Pyther99
beb1ea7506 improve comparisons 2021-07-13 19:55:29 +02:00
Pyther99
3ee5e00b11 remove return statements 2021-07-13 19:55:04 +02:00
Matthew Gamble
59b20389ba
Further improvements to operator parsing in lexer
- Add support for phrases 'multiplied by' and 'divided by'
- Add support for the division operator symbol ÷
- Fixed lexing of revolutions per minute units
2021-07-07 23:23:16 +10:00
Kasper
99943ecacd Fix Ω lexing 2021-07-07 05:36:57 +02:00
Kasper
2d457de7f1 Disallow named number followed by smaller named number
like 1 million thousand
2021-07-07 04:21:44 +02:00
Kasper
3137979d55
Merge pull request #18 from probablykasper/lexer-multiword
Improve multiword lexing
2021-07-07 01:57:11 +02:00
Kasper
ee2245dcb0 Revert accidental main.rs changes 2021-07-06 22:43:28 +02:00
Kasper
f25c88cf0e Remove debug logs 2021-07-06 22:35:03 +02:00
Kasper
c4d1cb1371 Match alphabetic characters directly, make stuff private 2021-07-06 20:25:29 +02:00
Kasper
c3f7166d28 Fix lexing of π with unit afterwards
e.g `πm`
2021-07-06 19:59:20 +02:00
Kasper
10f79dc78f Fix π lexing 2021-07-06 19:49:52 +02:00
Kasper
0c1d2b38c1 Add more tests by @djmattyg007 2021-07-06 19:06:50 +02:00
Kasper
84f604a96e Remove unnecessary lexer recursion 2021-07-06 17:59:54 +02:00
Kasper
1973c7281f Fixed suggested by @djmattyg007 2021-07-06 17:59:07 +02:00
Matthew Gamble
d60d534014
Various bits of cleanup suggested by clippy
It would be good to incorporate clippy into the CI pipeline once it's up
and running.
2021-07-06 23:30:49 +10:00
Kasper
e30810c997 Add tests by @djmattyg007 2021-07-06 07:17:43 +02:00
Kasper
c550f279c1 Add operator words plus, minus, times 2021-07-06 07:17:30 +02:00
Kasper
8a7603bc6e Fix watt parsing 2021-07-06 07:07:37 +02:00
Kasper
b435833b98 Fixed pound not lexed at the end of the input 2021-07-06 06:16:43 +02:00
Kasper
c34a21afe1 Re-add PoundForce and NewtonMeter parsing 2021-07-05 17:49:08 +02:00
Kasper
eaaee87b2c Fix multi-word parsing, revamp lexer to be recursive 2021-07-05 17:03:17 +02:00
Kasper
31077f669e Fix LightSecond parsing 2021-07-05 15:29:15 +02:00
Kasper
541e38dc65 Attempt at improving multi-word handling (incomplete) 2021-07-05 09:22:21 +02:00
Matthew Gamble
7895d70268
Add initial set of tests for the lexer 2021-07-03 12:11:26 +10: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
Kasper
9bf7c69c03
Merge pull request #11 from djmattyg007/use_stderr
Print 'no argument supplied' message on STDERR
2021-07-03 01:31:37 +02:00
Matthew Gamble
2805185317
Add non-US spellings of various "metre"-like words
Also fix a bug where decimeter units were being parsed into centimetres.
2021-07-03 09:09:43 +10: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
1abe436f52 Remove TokenVector type 2021-04-21 21:57:02 +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
Kasper
6585366b0d Fix panic when input contains only whitespace and/or commas 2021-04-21 21:06:02 +02:00