7afe1a37e4 
							
						 
					 
					
						
						
							
							Implement a trie, sans removal.  
						
						 
						
						
						
					 
					
						2018-03-24 02:01:39 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							77123561f0 
							
						 
					 
					
						
						
							
							Add a function to check if a tree node has a scope.  
						
						 
						
						
						
					 
					
						2018-03-24 00:36:10 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b6ab42f53a 
							
						 
					 
					
						
						
							
							Check for NULL where tree can be NULL.  
						
						 
						
						
						
					 
					
						2018-03-18 23:42:49 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							94f1a11f15 
							
						 
					 
					
						
						
							
							Replace C++-style comments with C90 compatible ones.  
						
						 
						
						
						
					 
					
						2018-03-18 19:21:09 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							9500a6f9b0 
							
						 
					 
					
						
						
							
							Make a single "operator" token, and specialize after parse.  
						
						 
						
						
						
					 
					
						2018-03-17 20:56:25 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							156c02908d 
							
						 
					 
					
						
						
							
							Allow operators to mean different things despite having the same string.  
						
						 
						
						
						
					 
					
						2018-03-17 18:32:49 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							7ab5eba529 
							
						 
					 
					
						
						
							
							Make distinction between prefix and postfix unary operators in trees.  
						
						 
						
						
						
					 
					
						2018-03-17 18:25:23 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							4e86ccc253 
							
						 
					 
					
						
						
							
							Use new table features to improve searching for operators.  
						
						 
						
						
						
					 
					
						2018-03-17 18:01:52 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							6b438dbc6d 
							
						 
					 
					
						
						
							
							Store the operator type in the corresponding table entry.  
						
						 
						
						
						
					 
					
						2018-03-17 17:38:13 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							7d3ec550e8 
							
						 
					 
					
						
						
							
							Fix bug causing incorrect handling of prefix operators.  
						
						 
						
						
						
					 
					
						2018-03-17 15:31:14 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							c131fbc758 
							
						 
					 
					
						
						
							
							Implement reserved operator parsing.  
						
						 
						
						
						
					 
					
						2018-03-16 23:09:41 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							27acfb0be7 
							
						 
					 
					
						
						
							
							Register reserved operators as tokens.  
						
						 
						
						
						
					 
					
						2018-03-16 23:09:11 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							d25c1a379a 
							
						 
					 
					
						
						
							
							Add function to search for reserved operators.  
						
						 
						
						
						
					 
					
						2018-03-16 22:11:48 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							ab2311def9 
							
						 
					 
					
						
						
							
							Store function / operator types when they are registered.  
						
						 
						
						
						
					 
					
						2018-03-15 19:41:11 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							429c0bde3e 
							
						 
					 
					
						
						
							
							Add syntax sugar for let.  
						
						 
						
						
						
					 
					
						2018-03-14 13:30:20 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							bb61dbcd54 
							
						 
					 
					
						
						
							
							Add support for the return keyword.  
						
						 
						
						
						
					 
					
						2018-03-08 21:31:24 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							f3f1cc8c43 
							
						 
					 
					
						
						
							
							Rename all the tree enums to have a prefix.  
						
						 
						
						... 
						
						
						
						This prevents some possible naming collisions. 
						
					 
					
						2018-03-08 21:13:25 -08:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							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  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							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  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							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