PaddiM8
|
4f9f8bc63e
|
Extended parser::eval and parser::parse documentation by explaining when None is returned.
|
2020-06-11 23:45:54 +02:00 |
|
PaddiM8
|
46a27d4129
|
Added simple documentation for the exposed parts.
|
2020-06-11 23:09:44 +02:00 |
|
PaddiM8
|
0274721878
|
Added test_undefined_fn for the interpreter.
|
2020-06-11 22:14:43 +02:00 |
|
PaddiM8
|
125499065a
|
Added test_fn and test_sum_fn for the interpreter.
|
2020-06-11 22:10:23 +02:00 |
|
PaddiM8
|
ffd26c1da9
|
Renamed symbol_table::contains_func to contains_fn.
|
2020-06-11 21:47:14 +02:00 |
|
PaddiM8
|
4fbb71f423
|
Made the ast module public.
|
2020-06-10 14:02:33 +02:00 |
|
PaddiM8
|
3ffd62c572
|
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
|
9ab0abf1b5
|
Added gamma function.
|
2020-06-09 20:50:05 +02:00 |
|
PaddiM8
|
98fc2bf151
|
Made the x_1 notation possible.
|
2020-06-09 14:59:29 +02:00 |
|
PaddiM8
|
995897fc25
|
Fixed lexer not ignoring whitespace properly.
|
2020-06-09 10:34:39 +02:00 |
|
PaddiM8
|
165df6d3f3
|
Changed lexer source to a peekable iterator, resulting in (hopefully) proper UTF-8 support.
|
2020-06-08 21:51:45 +02:00 |
|
PaddiM8
|
42524eefa3
|
Somewhat fixed UTF-8 support in the lexer.
|
2020-06-07 19:48:52 +02:00 |
|
PaddiM8
|
f6b7dce791
|
Added position data to tokens.
|
2020-06-06 20:15:32 +02:00 |
|
PaddiM8
|
aeed8049fc
|
Fixed output not displaying small-ish decimal numbers properly.
|
2020-06-06 17:20:40 +02:00 |
|
PaddiM8
|
d0536d6bd6
|
Created CalcError enum and centralised error formatting into once place.
|
2020-06-06 16:28:48 +02:00 |
|
PaddiM8
|
4a02134b22
|
Added unit tests for unit, var, undefined var, and var decl for the interpreter.
|
2020-06-06 15:39:34 +02:00 |
|
PaddiM8
|
3fda01e087
|
Added unit tests for literal, binary, and unary for the interpreter.
|
2020-06-05 21:57:20 +02:00 |
|
PaddiM8
|
2bacbf5c67
|
Added unary expression unit test for the parser.
|
2020-06-05 19:03:16 +02:00 |
|
PaddiM8
|
f1d09ae799
|
Changed lexer to allow whitespace between number literal.
|
2020-06-05 17:18:36 +02:00 |
|
PaddiM8
|
e7cbbc45c2
|
Removed test_case from test_pow().
|
2020-06-05 16:20:50 +02:00 |
|
PaddiM8
|
dab1006eb7
|
Added pow, var_decl, fn_decl, fn_call unit tests for the parser.
|
2020-06-05 16:18:29 +02:00 |
|
PaddiM8
|
98d4a16195
|
Cleaned up redundant code and replaced compare_enums() with PartialEq.
|
2020-06-05 13:47:39 +02:00 |
|
PaddiM8
|
4360f3f4ee
|
Set up foundation for parser unit testing and added test_var() and test_precedence() tests.
|
2020-06-05 13:36:11 +02:00 |
|
PaddiM8
|
0d33efbf63
|
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 |
|