Kasper
5371f8d5ac
Added units of electric current
2020-11-20 20:19:31 +01:00
Kasper
7284422ec0
Fixed consecutive percentage signs error
2020-11-14 05:00:22 +01:00
Kasper
03b9df2362
Fixed trailing percentage sign being ignored
2020-11-14 04:10:56 +01:00
Kasper
961daae9d5
Added named numbers (hundred, quadrillion etc)
2020-11-14 04:08:27 +01:00
Kasper
802ad3d88f
Added units of frequency
2020-11-13 18:13:56 +01:00
Ethan Wu
d24d4af969
Fix bugs caused by typos
...
- Fix spelling of *quarter* in lexer and assign `Unit::Quarter` correctly
- Use division instead of multiplication when dividing a number by another
number of the same unit
2020-10-12 00:19:19 -07:00
Kasper
56ea8380b7
Code improvements, added a bunch of doc comments
...
There are technically no breaking changes because everything was broken in the first place
2020-08-20 17:11:19 +02:00
Kasper
025b1b9169
Pow with units
2020-01-18 20:33:57 +01:00
Kasper
febd5366e8
Turned panics into errors
2020-01-15 17:45:53 +01: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
adaf4eb4ac
Support for writing multidimensional lenghts as km2 etc
2020-01-13 18:13:43 +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
73861a1848
Removed unnecessary chars enumeration from lexer
2020-01-13 15:49:49 +01:00
Kasper
3c53a22cfc
Support for 6'4" syntax
2020-01-13 03:35:54 +01:00
Kasper
a0a33d175b
Fixed Inch being lexed as InchOfMercury
2020-01-13 01:55:48 +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
efa76e93c5
Lexer ignores commas
2020-01-12 00:07:10 +01:00
Kasper
8a232f72f0
Added newton meter
2020-01-11 04:50:31 +01:00
Kasper
539568c5b5
Added unit of power
2020-01-11 04:46:43 +01:00
Kasper
0758611dfb
Added lexing of energy and speed units
2020-01-11 04:31:30 +01:00
Kasper
35043932d5
Fixes/additions for lexing units
2020-01-10 17:45:06 +01:00
Kasper
83fd5c233a
Added support for all units in lexer
2020-01-10 17:31:38 +01:00
Kasper
fbbb895c64
Greatly improved parsing of multi-word units
2020-01-09 23:01:31 +01:00
Kasper
93e80e6f76
Removed unnecessary adding of () around input
2020-01-08 19:51:52 +01:00
Kasper
a0014f9afc
Added area, volume, mass units
2020-01-08 19:33:51 +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
d463082db5
Fix long units causing error (max_word_length)
2019-12-21 17:59:21 +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
670aa7e732
Fixed whitespace/commas causing lexing error
2019-12-14 22:59:04 +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
e8d363acfc
Fixed byte_index not incrementing in digit/string loops
2019-12-09 04:34: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