2120417f76 
								
							 
						 
						
							
							
								
								[parser] Add test for longer dotted pair: (ab cd . ef)  
							
							
							
						 
						
							2018-09-08 16:09:44 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c6696c4f8b 
								
							 
						 
						
							
							
								
								[parser] Handle dotted pairs!  
							
							
							
						 
						
							2018-09-08 16:06:23 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fe271dfd8b 
								
							 
						 
						
							
							
								
								[parser] We do not need the return value of pop()  
							
							
							
						 
						
							2018-09-08 16:05:33 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c14c939ad3 
								
							 
						 
						
							
							
								
								[parser] ListParser can handle lists of more than 2 elements  😮  
							
							... 
							
							
							
							As ListParser sees items within its list, it assembles a vector of Pairs. When
the parser encounters ')', it assembles the pairs into an actual linked list and
returns the root Pair.
This work also revealed that I was asserting incorrectly in my single_pair test.
It should return Null instead of an empty Pair. Neat.
Closes  #17 . 
							
						 
						
							2018-08-26 22:24:17 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c02706e36f 
								
							 
						 
						
							
							
								
								[parser] Add failing test for  #17  
							
							
							
						 
						
							2018-08-26 18:23:40 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ae63ce8e20 
								
							 
						 
						
							
							
								
								[parser] Add a test for parsing bools  
							
							... 
							
							
							
							Related to #13  
							
						 
						
							2018-08-26 17:48:22 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4fab810d1f 
								
							 
						 
						
							
							
								
								[parser] Add BoolParser and hook it up to existing parsers  
							
							... 
							
							
							
							Closes  #13 . 
						
							2018-08-26 17:43:59 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fe478fadc7 
								
							 
						 
						
							
							
								
								[parser] Reorganize NodeParsers into parsers/ subdirectory  
							
							
							
						 
						
							2018-08-26 17:32:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8d8cf34234 
								
							 
						 
						
							
							
								
								[parser] Simple REPL that parses input and prints output  
							
							
							
						 
						
							2018-08-25 20:38:54 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cf503838ae 
								
							 
						 
						
							
							
								
								[parser] Add a single pair test  
							
							
							
						 
						
							2018-08-25 20:21:18 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d312c41dc7 
								
							 
						 
						
							
							
								
								[parser] Integration test of parsing a single Sym!  
							
							
							
						 
						
							2018-08-25 11:46:42 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								37455641ec 
								
							 
						 
						
							
							
								
								[parser] Attempt to write a unit test; realize you need a way to check for equality of objects  🤷  
							
							
							
						 
						
							2018-08-25 07:59:43 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								683c9df243 
								
							 
						 
						
							
							
								
								[parser] Handle the result of passing a subparser's result to the next parser in the stack  
							
							
							
						 
						
							2018-08-25 07:58:49 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								580a71c997 
								
							 
						 
						
							
							
								
								[parser] This resolved a warning about this variable's value being unread -- idk what is going on here  
							
							
							
						 
						
							2018-08-25 07:57:45 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c35fce7727 
								
							 
						 
						
							
							
								
								[parser, types] Call subparser_completed  
							
							
							
						 
						
							2018-08-24 21:07:04 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d3520be67e 
								
							 
						 
						
							
							
								
								[parser] Add subparser_completed() method to NodeParser and implementing Parsers  
							
							
							
						 
						
							2018-08-24 21:06:24 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0a9f235836 
								
							 
						 
						
							
							
								
								[parser] Be a little nicer about line wrapping  
							
							
							
						 
						
							2018-08-24 17:21:45 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7b90b5d229 
								
							 
						 
						
							
							
								
								[parser] Fix crash  
							
							... 
							
							
							
							- Create a ProgramParser on each call of next()
- Fix up ending condition check 
							
						 
						
							2018-08-24 17:19:33 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fea93f44eb 
								
							 
						 
						
							
							
								
								[parser] Clean up the prints  
							
							
							
						 
						
							2018-08-24 17:12:54 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								e822a6b6ec 
								
							 
						 
						
							
							
								
								[parser] Clean up a little; add some prints for debugging  
							
							
							
						 
						
							2018-08-24 15:43:19 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1ff349e147 
								
							 
						 
						
							
							
								
								[parser] Clean up some syntax and warnings  
							
							
							
						 
						
							2018-08-24 08:33:06 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								976675027f 
								
							 
						 
						
							
							
								
								[parser] Handle None from input  
							
							
							
						 
						
							2018-08-24 08:26:08 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								96e92230ed 
								
							 
						 
						
							
							
								
								[parser] Fill in the iteration cases  
							
							
							
						 
						
							2018-08-24 08:14:39 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								dbd6329dd6 
								
							 
						 
						
							
							
								
								[parser] Hand off lex to current parser and collect the result  
							
							
							
						 
						
							2018-08-24 08:05:39 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d13396bb5d 
								
							 
						 
						
							
							
								
								[parser] Fill in some framing comments; pass lexer errors out directly  
							
							
							
						 
						
							2018-08-24 08:00:33 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d9abd033e7 
								
							 
						 
						
							
							
								
								[parser] Flatten the matches  
							
							
							
						 
						
							2018-08-24 07:54:00 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2f9c16ff38 
								
							 
						 
						
							
							
								
								[parser] Working out the structure of this stupid Parser::next()  
							
							
							
						 
						
							2018-08-23 20:36:41 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4bade1af4a 
								
							 
						 
						
							
							
								
								[parser] Fill out ProgramParser  
							
							
							
						 
						
							2018-08-23 20:27:50 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								80bf4b7bf1 
								
							 
						 
						
							
							
								
								[parser] Expand ParseError; add a ProgramParser to start things off  
							
							
							
						 
						
							2018-08-23 20:21:59 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6aed66d2b5 
								
							 
						 
						
							
							
								
								[parser] Add ProgramParser in its own module  
							
							
							
						 
						
							2018-08-23 20:20:12 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4cd46d85a9 
								
							 
						 
						
							
							
								
								[parser] Improve this error message  
							
							
							
						 
						
							2018-08-23 18:04:56 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9c06b293f9 
								
							 
						 
						
							
							
								
								[parser] Determine when to parse a new list and when to prepare to parse the current list  
							
							
							
						 
						
							2018-08-23 18:04:44 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8e9fde7a9f 
								
							 
						 
						
							
							
								
								[parser, types] Add Obj::take() and use it to take the Obj from the parser when it is done  
							
							
							
						 
						
							2018-08-23 18:04:04 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								929846152e 
								
							 
						 
						
							
							
								
								[parser, types] Clean up obj parsers  
							
							... 
							
							
							
							- Define ListParser, SymParser in their own separate modules
- Add some stuff to types to make working with them more ergonomic 
							
						 
						
							2018-08-23 17:52:56 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0208ecb4d2 
								
							 
						 
						
							
							
								
								[parser] Continuing to sketch the parser  
							
							
							
						 
						
							2018-08-20 16:14:17 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8475720a71 
								
							 
						 
						
							
							
								
								Add accessor for Lex::value  
							
							
							
						 
						
							2018-08-20 15:21:20 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cabe40bd7a 
								
							 
						 
						
							
							
								
								[parser] Skeleton IdParser and ListParser for Ids and Lists respectively  
							
							
							
						 
						
							2018-08-19 22:30:49 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								027854d162 
								
							 
						 
						
							
							
								
								[parser] Print things in main() as the thing  
							
							
							
						 
						
							2018-08-19 22:11:08 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d7bffdc432 
								
							 
						 
						
							
							
								
								[parser] Add parsers field to Parser  
							
							... 
							
							
							
							This will be a stack of node-specific parsers. As you descend the tree, a new
parser will be created for each node we visit. 
							
						 
						
							2018-08-19 22:04:05 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								52ede10d5e 
								
							 
						 
						
							
							
								
								[parser] Remove program.rs  
							
							
							
						 
						
							2018-08-19 21:15:07 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								efe0c27d93 
								
							 
						 
						
							
							
								
								Make the Parser dump tokens and quit  
							
							... 
							
							
							
							Write a main() for sibilparser that just does that. 
							
						 
						
							2017-06-18 17:34:46 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d783e561da 
								
							 
						 
						
							
							
								
								Strip down the parser (again...)  
							
							
							
						 
						
							2017-04-29 08:58:02 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								076d391d4b 
								
							 
						 
						
							
							
								
								Remove list.rs from the parser  
							
							
							
						 
						
							2017-04-22 15:22:48 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1365ab71db 
								
							 
						 
						
							
							
								
								More rough sketching of a parser  
							
							
							
						 
						
							2017-04-16 11:42:08 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								594b3e44e1 
								
							 
						 
						
							
							
								
								Rough outline of something resembling a parser (again...)  
							
							
							
						 
						
							2017-04-15 21:01:28 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								636b0dda9b 
								
							 
						 
						
							
							
								
								Create empty sibilparser crate  
							
							
							
						 
						
							2017-04-15 10:19:49 -07:00