Commit graph

353 commits

Author SHA1 Message Date
3e03ca7e4c Implement Integers and Rationals 2017-04-09 15:58:20 -07:00
0d3021fb74 Consolidate some tests in bool and char 2017-04-09 15:55:49 -07:00
6ae557d837 Remake the number module directory 2017-04-09 14:09:24 -07:00
8fe0bf3f71 Add initial number module implementation 2017-04-09 14:09:08 -07:00
370083e2f0 Break type checks into separate traits 2017-04-09 14:08:54 -07:00
b094310b3c Remove number module 2017-04-09 14:08:08 -07:00
18358f6d21 Add types/src/number/mod.rs
Empty number module
2017-04-08 16:39:01 -07:00
359da30eb7 Move mod stuff to lib.rs 2017-04-08 16:37:23 -07:00
c2ac6450ba Clean up some Value/Bool/Char code 2017-04-08 16:35:11 -07:00
27f1fb63ea Wholesale move modules from src/types to types/src 2017-04-08 16:25:02 -07:00
0e6231bd94 Add empty sibiltypes lib at ./types 2017-04-08 16:22:56 -07:00
6eb2f930a6 Add another lexer unit test to find a straight integer 2017-04-08 16:12:00 -07:00
8c83f884bf debug_assert that progress is being made 2017-04-08 16:11:44 -07:00
4a0586b1a5 Put str tests in a nested tests module 2017-04-03 16:55:47 -04:00
104b9b0864 Move around the tests for types 2017-04-03 16:44:04 -04:00
3cb1824a1b Implement IsBool and IsChar for Char and Bool 2017-04-03 16:40:23 -04:00
704c342a6f Add IsBool and IsChar to Value trait 2017-04-03 16:27:09 -04:00
149f953d11 Remove parser stuff from main() 2017-04-03 16:20:13 -04:00
90088ae814 Fix up types tests 2017-04-03 16:20:06 -04:00
33bf65db68 Actually read the value of the token variable 2017-04-03 16:19:58 -04:00
cc1a87761d Remove parse mod 2017-04-03 16:16:04 -04:00
2e619e716f Fix compiler errors in tests 2017-04-03 16:13:51 -04:00
b0aa38e387 Clean up compiler errors related to type name changes 2017-04-03 16:12:12 -04:00
ddfac28b8c Rearrange the types modules a bunch 2017-04-03 14:51:39 -04:00
82b96abd62 Implement Error::new() 2017-01-16 16:40:36 -08:00
ba911741ab Rename all the Identifier stuff Id 2017-01-16 16:23:19 -08:00
61d98ff135 Rename Identifier expression just Id 2017-01-16 16:18:57 -08:00
8e25c7e521 Write a test for parsing a simple list expression -- it fails right now 2017-01-16 15:31:00 -08:00
a780ef4ae2 Split Expression::Atom into Identifier and Literal cases 2017-01-16 15:29:46 -08:00
30173f4aaf Parse a single boolean expression into a Program! 2017-01-16 10:29:56 -08:00
d6a9fc26cd Boolean and Character are a little more filled out, and used by the Lexer 2017-01-16 10:29:44 -08:00
42d191d036 Successful empty input parser test! 2017-01-14 22:43:05 -08:00
5d1f6229f9 Derive Debug and PartialEq for Programs 2017-01-14 22:40:22 -08:00
2e3306b67b Compare Expressions 2017-01-14 22:40:09 -08:00
a55fdedd1c Get PartialEq on Value types working correctly. Yay! 2017-01-14 22:31:54 -08:00
c7f267d12d Fiddling with PartialEq on Value trait 2017-01-14 10:23:39 -08:00
ec330c2582 Implement Debug on Expression 2017-01-14 10:22:28 -08:00
954bec9ab5 Duplicate use 2017-01-14 10:20:46 -08:00
1b5a47fb86 Small progress on the parser loop... 2017-01-12 21:38:28 -08:00
a3723b2e65 Order derives alphabetically 2017-01-12 21:38:19 -08:00
d8e46e7228 Add manual impl of fmt::Debug to Expression 2017-01-12 21:38:01 -08:00
db2e81d518 Add Debug to Value trait 2017-01-12 21:37:42 -08:00
8bd71a144d Parse the lexed input into a Program in main 2017-01-12 21:18:32 -08:00
c2209a8a8a Add Value trait to type structs 2017-01-12 21:18:20 -08:00
bcedfe2f81 Expand the parser a bit, loop over Lexes and print them 2017-01-12 21:18:07 -08:00
5ec2a11df1 Add Expression type, Program is a list of Expressions 2017-01-12 21:17:48 -08:00
febc3c359f Publically export Lex and Token from lexer 2017-01-12 21:15:42 -08:00
5f4b96e4e2 Misc tiny cleanup bits in the lexer 2017-01-07 19:31:22 -08:00
2a680d07c7 Lex all the special character escapes, without stupid state hacking 2017-01-07 16:20:26 -08:00
2f8f71fc28 A Program node, and an empty parse() method on Parser 2017-01-02 12:17:26 -05:00