PaddiM8
|
f3c42fb95a
|
Added support for 'minus' expressions in the inverter and added some comments.
|
2020-06-14 21:35:56 +02:00 |
|
PaddiM8
|
4c34908368
|
Changed inverter to instead move expressions to the LHS, like done when equations are solved in maths. Also made it multiply into parenthesis.
|
2020-06-14 19:23:02 +02:00 |
|
PaddiM8
|
6e81ea5ae1
|
Added some error checking to the inverter.
|
2020-06-13 22:18:37 +02:00 |
|
PaddiM8
|
7a4fefe1d0
|
Merge branch 'master' into units
|
2020-06-13 21:57:27 +02:00 |
|
PaddiM8
|
7b6f27186d
|
Publish.
|
2020-06-13 21:42:14 +02:00 |
|
PaddiM8
|
05bfabb1d4
|
Made it possible for the inverter to invert expressions with function calls.
|
2020-06-13 20:06:21 +02:00 |
|
PaddiM8
|
71df9f5454
|
Created the foundation of an expression inverter. This is used to create a second *inverted* unit declaration, in order to cover both of the units.
|
2020-06-13 19:01:33 +02:00 |
|
PaddiM8
|
45adb1b526
|
Added the unit statement (very basic and experimental).
|
2020-06-13 16:19:32 +02:00 |
|
PaddiM8
|
ada3fc52f9
|
Trimmed end matches of dots in order to avoid numbers such as 1. .
|
2020-06-12 21:30:03 +02:00 |
|
PaddiM8
|
64083eca82
|
Updated crate versions (thought I did this in the previous commit??).
|
2020-06-12 21:27:01 +02:00 |
|
PaddiM8
|
039f79697d
|
Merge branch 'master' of https://github.com/PaddiM8/kalk
|
2020-06-12 21:01:12 +02:00 |
|
PaddiM8
|
6f935c1ea0
|
Changed kalk crate version.
|
2020-06-12 21:00:56 +02:00 |
|
PaddiM8
|
bf5d02907f
|
Updated example code in README.
|
2020-06-12 21:00:03 +02:00 |
|
PaddiM8
|
29960043b8
|
Version update test.
|
2020-06-12 18:16:54 +02:00 |
|
PaddiM8
|
f39e9d6c6c
|
Updated .travis.yml.
|
2020-06-12 16:10:32 +02:00 |
|
PaddiM8
|
2ccb439dec
|
Created a workspace Cargo.toml to unify the library and binary.
|
2020-06-12 14:11:42 +02:00 |
|
PaddiM8
|
7a0ede8dda
|
Fixed code in documentation in parser.rs
|
2020-06-12 14:10:10 +02:00 |
|
PaddiM8
|
11c7e5b287
|
Added example image and expanded feature list.
|
2020-06-12 00:34:50 +02:00 |
|
PaddiM8
|
1503336700
|
Added readme to Cargo.toml.
|
2020-06-12 00:08:14 +02:00 |
|
PaddiM8
|
88fd8d1bc1
|
Added separate readme for the library.
|
2020-06-12 00:06:54 +02:00 |
|
PaddiM8
|
fafc88f2d7
|
Added separate readme for the library.
|
2020-06-12 00:06:15 +02:00 |
|
PaddiM8
|
03d0ca23e9
|
Changed version number to 0.1.1
|
2020-06-11 23:53:04 +02:00 |
|
PaddiM8
|
aa21581cf0
|
Changed 'parsers' category to 'parser-implementations'
|
2020-06-11 23:52:12 +02:00 |
|
PaddiM8
|
f9283be74d
|
Changed Cargo.toml to prepare for publish.
|
2020-06-11 23:47:03 +02:00 |
|
PaddiM8
|
3fad899daa
|
Extended parser::eval and parser::parse documentation by explaining when None is returned.
|
2020-06-11 23:45:54 +02:00 |
|
PaddiM8
|
c42fcccabd
|
Added simple documentation for the exposed parts.
|
2020-06-11 23:09:44 +02:00 |
|
PaddiM8
|
72baaf3e36
|
Added test_undefined_fn for the interpreter.
|
2020-06-11 22:14:43 +02:00 |
|
PaddiM8
|
4e2fe9eb3b
|
Added test_fn and test_sum_fn for the interpreter.
|
2020-06-11 22:10:23 +02:00 |
|
PaddiM8
|
b3e07b710e
|
Renamed symbol_table::contains_func to contains_fn.
|
2020-06-11 21:47:14 +02:00 |
|
PaddiM8
|
0786398d52
|
Made the ast module public.
|
2020-06-10 14:02:33 +02:00 |
|
PaddiM8
|
42a9e7e82a
|
Renamed parser::parse to parser::eval and created a new parser::parse function that does not evalutate the statements.
|
2020-06-10 13:55:43 +02:00 |
|
PaddiM8
|
b4f129835a
|
Added gamma function.
|
2020-06-09 20:50:05 +02:00 |
|
PaddiM8
|
c6f60748e2
|
Made the x_1 notation possible.
|
2020-06-09 14:59:29 +02:00 |
|
PaddiM8
|
280654130d
|
Fixed lexer not ignoring whitespace properly.
|
2020-06-09 10:34:39 +02:00 |
|
PaddiM8
|
4c4b4bfede
|
Changed lexer source to a peekable iterator, resulting in (hopefully) proper UTF-8 support.
|
2020-06-08 21:51:45 +02:00 |
|
PaddiM8
|
1861ce0719
|
Somewhat fixed UTF-8 support in the lexer.
|
2020-06-07 19:48:52 +02:00 |
|
PaddiM8
|
598e44ab1c
|
Added position data to tokens.
|
2020-06-06 20:15:32 +02:00 |
|
PaddiM8
|
2074a5b15b
|
Fixed output not displaying small-ish decimal numbers properly.
|
2020-06-06 17:20:40 +02:00 |
|
PaddiM8
|
c2e446576a
|
Created CalcError enum and centralised error formatting into once place.
|
2020-06-06 16:28:48 +02:00 |
|
PaddiM8
|
7aececa9fb
|
Added unit tests for unit, var, undefined var, and var decl for the interpreter.
|
2020-06-06 15:39:34 +02:00 |
|
PaddiM8
|
60384ca8a8
|
Added unit tests for literal, binary, and unary for the interpreter.
|
2020-06-05 21:57:20 +02:00 |
|
PaddiM8
|
5e1753410c
|
Added unary expression unit test for the parser.
|
2020-06-05 19:03:16 +02:00 |
|
PaddiM8
|
f0889064b2
|
Changed lexer to allow whitespace between number literal.
|
2020-06-05 17:18:36 +02:00 |
|
PaddiM8
|
a9c4a45465
|
Removed test_case from test_pow().
|
2020-06-05 16:20:50 +02:00 |
|
PaddiM8
|
3cbf4e5b4a
|
Added pow, var_decl, fn_decl, fn_call unit tests for the parser.
|
2020-06-05 16:18:29 +02:00 |
|
PaddiM8
|
7125b18853
|
Cleaned up redundant code and replaced compare_enums() with PartialEq.
|
2020-06-05 13:47:39 +02:00 |
|
PaddiM8
|
ecf54b8496
|
Set up foundation for parser unit testing and added test_var() and test_precedence() tests.
|
2020-06-05 13:36:11 +02:00 |
|
PaddiM8
|
48033a0b13
|
Added unit tests for lexer.
|
2020-06-04 21:53:45 +02:00 |
|
PaddiM8
|
3a8e939ac0
|
Removed self.advance() code duplication in lexer.
|
2020-06-04 20:09:43 +02:00 |
|
PaddiM8
|
cbc0b340a1
|
Renamed to 'kalk'.
|
2020-06-04 19:43:43 +02:00 |
|