2d26e45e90 
							
						 
					 
					
						
						
							
							Add function node parsing.  
						
						 
						
						
						
					 
					
						2018-03-08 21:10:05 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							2487cdebe0 
							
						 
					 
					
						
						
							
							Add the ability to parse types.  
						
						 
						
						... 
						
						
						
						This ability is not integrated with the rest of the parser - in fact, the grammar for things like function declarations (where type declarations are necessary) is not yet determined. 
						
					 
					
						2018-03-06 16:47:11 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							45d955b8bd 
							
						 
					 
					
						
						
							
							Add utility functions for copying strings.  
						
						 
						
						
						
					 
					
						2018-03-06 16:45:55 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							bb26405df0 
							
						 
					 
					
						
						
							
							Add a parse type struct, used to hold type data as it is parsed.  
						
						 
						
						
						
					 
					
						2018-03-06 16:45:43 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							55f397d732 
							
						 
					 
					
						
						
							
							Update liblex.  
						
						 
						
						
						
					 
					
						2018-02-28 13:48:28 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							ac8e2ff418 
							
						 
					 
					
						
						
							
							Implement the do-while loop.  
						
						 
						
						
						
					 
					
						2018-02-27 12:30:37 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							976b6d1b1a 
							
						 
					 
					
						
						
							
							Add code to parse while loops.  
						
						 
						
						
						
					 
					
						2018-02-27 11:57:45 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							1d0ea602a5 
							
						 
					 
					
						
						
							
							Make expression parsing parse more valid syntax.  
						
						 
						
						
						
					 
					
						2018-02-27 11:45:51 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							c8ec93880e 
							
						 
					 
					
						
						
							
							Add a macro to considerably simplify child parsing code.  
						
						 
						
						
						
					 
					
						2018-02-27 11:29:59 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							127a59ba50 
							
						 
					 
					
						
						
							
							Add comments to the debug header.  
						
						 
						
						
						
					 
					
						2018-02-27 11:08:14 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							08513a2315 
							
						 
					 
					
						
						
							
							Add function to print to file.  
						
						 
						
						
						
					 
					
						2018-02-26 18:14:31 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							2823b0b66b 
							
						 
					 
					
						
						
							
							Fix bug in order of operations processing.  
						
						 
						
						
						
					 
					
						2018-02-26 13:51:37 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							65071d47b3 
							
						 
					 
					
						
						
							
							Add a function to print the parse tree.  
						
						 
						
						
						
					 
					
						2018-02-25 23:09:35 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							c18a5e49de 
							
						 
					 
					
						
						
							
							Add the call node as one of the nodes that contains a vector.  
						
						 
						
						
						
					 
					
						2018-02-25 23:09:13 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							88108bb3c0 
							
						 
					 
					
						
						
							
							Make the has string and has vector functions public.  
						
						 
						
						
						
					 
					
						2018-02-25 22:57:45 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							52ac67026f 
							
						 
					 
					
						
						
							
							Remove function tokens. If functions are first class, they're variables.  
						
						 
						
						
						
					 
					
						2018-02-25 14:12:34 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							7a84babf1e 
							
						 
					 
					
						
						
							
							Add basic function call parsing.  
						
						 
						
						
						
					 
					
						2018-02-24 20:08:17 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							052fc5b943 
							
						 
					 
					
						
						
							
							Fix bugs in the if-statement parser.  
						
						 
						
						
						
					 
					
						2018-02-24 20:07:54 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b19adef236 
							
						 
					 
					
						
						
							
							Abstract creating nodes with both strings and vectors.  
						
						 
						
						
						
					 
					
						2018-02-24 20:07:44 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							d26cb6283c 
							
						 
					 
					
						
						
							
							Fix bug causing incorrect postfix parsing.  
						
						 
						
						
						
					 
					
						2018-02-21 19:16:42 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							a3e1fdd46e 
							
						 
					 
					
						
						
							
							Clean up code in places suggested by static analysis.  
						
						 
						
						
						
					 
					
						2018-02-21 19:06:00 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							0541c18a91 
							
						 
					 
					
						
						
							
							Fix bug causing the free function miss freeing a vector.  
						
						 
						
						
						
					 
					
						2018-02-21 19:00:04 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							6c111f9b67 
							
						 
					 
					
						
						
							
							Fix another unnecessary free bug.  
						
						 
						
						
						
					 
					
						2018-02-21 18:58:32 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							160c0a93da 
							
						 
					 
					
						
						
							
							Make token reporting work for EOF.  
						
						 
						
						
						
					 
					
						2018-02-21 18:55:05 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							919cfb495c 
							
						 
					 
					
						
						
							
							Fix segmentation fault causing bugs.  
						
						 
						
						
						
					 
					
						2018-02-21 18:54:52 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							e5c2570bac 
							
						 
					 
					
						
						
							
							Implement parsing if expressions.  
						
						 
						
						
						
					 
					
						2018-02-20 16:38:02 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							8c8e84b10d 
							
						 
					 
					
						
						
							
							Fix bug causing spaces and newlines to remain in source.  
						
						 
						
						
						
					 
					
						2018-02-20 16:37:37 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							a7c49192fb 
							
						 
					 
					
						
						
							
							Use the new utility functions.  
						
						 
						
						
						
					 
					
						2018-02-20 13:24:21 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							f8d07350a7 
							
						 
					 
					
						
						
							
							Implement functions to help with allocation.  
						
						 
						
						
						
					 
					
						2018-02-20 13:11:40 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							8ffcbb0ee2 
							
						 
					 
					
						
						
							
							Make blocks expressions, and add implicit void expression at block ends.  
						
						 
						
						
						
					 
					
						2018-02-18 21:05:06 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							987027c4fc 
							
						 
					 
					
						
						
							
							Revert "Allow last expression in code to not be terminated by a semicolon."  
						
						 
						
						... 
						
						
						
						12660b1e4a 
						
					 
					
						2018-02-18 20:05:15 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							96b2dc234f 
							
						 
					 
					
						
						
							
							Remove currently unused node types from the tree code.  
						
						 
						
						
						
					 
					
						2018-02-18 19:42:54 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							12660b1e4a 
							
						 
					 
					
						
						
							
							Allow last expression in code to not be terminated by a semicolon.  
						
						 
						
						
						
					 
					
						2018-02-18 19:02:06 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							c7aa521b19 
							
						 
					 
					
						
						
							
							Change function name a little.  
						
						 
						
						
						
					 
					
						2018-02-17 21:33:33 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							71f7711f92 
							
						 
					 
					
						
						
							
							Add sanitization of operators.  
						
						 
						
						
						
					 
					
						2018-02-17 20:31:30 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							2e89a338df 
							
						 
					 
					
						
						
							
							Rearrange parsing code for clarity.  
						
						 
						
						
						
					 
					
						2018-02-17 20:16:50 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							7cee06131e 
							
						 
					 
					
						
						
							
							Free table entries when the table is released.  
						
						 
						
						
						
					 
					
						2018-02-17 19:56:18 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							07284d1fb2 
							
						 
					 
					
						
						
							
							Add a table entry free function.  
						
						 
						
						
						
					 
					
						2018-02-17 19:53:33 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							72d60855c2 
							
						 
					 
					
						
						
							
							Implement storing expressions into block.  
						
						 
						
						
						
					 
					
						2018-02-17 19:52:40 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							811704be25 
							
						 
					 
					
						
						
							
							Add a recursive tree freeing function.  
						
						 
						
						
						
					 
					
						2018-02-17 19:20:10 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							a52735f0b3 
							
						 
					 
					
						
						
							
							Finish the "construct tree" part of Shunting Yard.  
						
						 
						
						
						
					 
					
						2018-02-17 19:08:35 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							68b4fb5807 
							
						 
					 
					
						
						
							
							Complete the "rearrange" part of Shunting Yard in the parser.  
						
						 
						
						
						
					 
					
						2018-02-17 16:01:21 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b1aa2a4bf5 
							
						 
					 
					
						
						
							
							Implement associativity storage for operators.  
						
						 
						
						
						
					 
					
						2018-02-17 16:00:39 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							bf3c90bed2 
							
						 
					 
					
						
						
							
							Begin the shunting-yard implementation.  
						
						 
						
						
						
					 
					
						2018-02-17 14:40:43 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							101847e70d 
							
						 
					 
					
						
						
							
							Implement function to pop things off the stack until parenth.  
						
						 
						
						
						
					 
					
						2018-02-17 14:40:30 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							1157b126ca 
							
						 
					 
					
						
						
							
							Add function to create a new op node and push it to a list.  
						
						 
						
						
						
					 
					
						2018-02-17 14:04:59 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							aef84d0548 
							
						 
					 
					
						
						
							
							Remove now-gone tokens from the parser.  
						
						 
						
						
						
					 
					
						2018-02-17 14:02:10 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							8cd1d23120 
							
						 
					 
					
						
						
							
							Add functions to separately register different types of operators.  
						
						 
						
						
						
					 
					
						2018-02-17 14:01:48 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							a3ce8fbd9c 
							
						 
					 
					
						
						
							
							Tone down the current token list, in favor of adding them later.  
						
						 
						
						
						
					 
					
						2018-02-17 13:32:55 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							841c2f15e5 
							
						 
					 
					
						
						
							
							Add function to free tree nodes.  
						
						 
						
						
						
					 
					
						2018-02-17 12:55:50 -08:00