|  | ec6df32839 | Start implementing using the state transition table in the lexer | 2023-07-30 11:47:26 +01:00 |  | 
			
				
					|  | de57d9f14b | Add enum value for newline | 2023-07-30 00:37:39 +01:00 |  | 
			
				
					|  | f1f90cf56b | Specify the length of the strings tables explicitly | 2023-07-29 22:10:28 +01:00 |  | 
			
				
					|  | 41d7cf2717 | Reformat | 2023-07-29 22:09:09 +01:00 |  | 
			
				
					|  | 002a8e7064 | Get the input and state strings from tables instead of switch cases | 2023-07-29 22:07:03 +01:00 |  | 
			
				
					|  | fc80095d1f | Remove clear_file and update write_table to accept a file pointer | 2023-07-29 21:46:59 +01:00 |  | 
			
				
					|  | 642d000ebd | Fix keyword handling so the final keyword states don't consume input | 2023-07-29 21:42:20 +01:00 |  | 
			
				
					|  | b4a4865870 | Regenerate the state table | 2023-07-27 00:54:53 +01:00 |  | 
			
				
					|  | 1b4d6a6156 | Update column width and write row state as a comment | 2023-07-27 00:53:39 +01:00 |  | 
			
				
					|  | 26fabd91b9 | Ensure build scripts fail if attempting to run them from different directory | 2023-07-25 09:00:11 +01:00 |  | 
			
				
					|  | adde1db0f4 | Finalise generating the state table | 2023-07-25 08:56:42 +01:00 |  | 
			
				
					|  | 7eec0e0730 | Add generating the table to the main build script | 2023-07-25 08:56:18 +01:00 |  | 
			
				
					|  | 6c454fbb8e | Add char_type function to lexer.c but exclude it from build | 2023-07-25 08:55:46 +01:00 |  | 
			
				
					|  | fd8231b02d | Pull states and inputs enums to a separate header | 2023-07-23 22:49:23 +01:00 |  | 
			
				
					|  | 09f2315b66 | Test generating a state transition table | 2023-07-23 22:49:09 +01:00 |  | 
			
				
					|  | 91162654b3 | Initial work on converting the state machine to a state table | 2023-07-23 22:48:28 +01:00 |  | 
			
				
					|  | 6e93d3ecd1 | Update .gitignore | 2023-07-23 22:48:05 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | 9cba0172b9 | Update is_valid_hex_char | 2023-07-12 22:33:58 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | ba813ea5bf | Switch to using dstring as a submodule | 2023-07-12 22:15:18 +01:00 |  | 
			
				
					|  | 621e50ee24 | Convert free_json to an iterative function to avoid stack overflow on large files | 2023-07-12 00:37:45 +01:00 |  | 
			
				
					|  | 2bbf21f90b | Remove compile_commands.json from source control | 2023-07-09 23:50:06 +01:00 |  | 
			
				
					|  | f5b1fae214 | Update README | 2023-07-09 23:46:25 +01:00 |  | 
			
				
					|  | 25e9c2db04 | Add todo | 2023-07-09 22:30:14 +01:00 |  | 
			
				
					|  | f1519cf0ea | Read the file into a dynamic array to avoid stack overflow | 2023-07-02 20:50:24 +01:00 |  | 
			
				
					|  | dde80250ed | Cleanup unused includes | 2023-07-01 16:48:47 +01:00 |  | 
			
				
					|  | f9e9f0ebd8 | Add function to traverse json tree and free all memory allocations | 2023-07-01 16:45:31 +01:00 |  | 
			
				
					|  | 135a6da54c | Ensure negative numbers are handled properly | 2023-07-01 15:12:21 +01:00 |  | 
			
				
					|  | e818135aef | Move the logic for loading a json file into the load_json function | 2023-07-01 15:05:53 +01:00 |  | 
			
				
					|  | 10597c0ed7 | Remove validate_json | 2023-07-01 15:05:41 +01:00 |  | 
			
				
					|  | ff110ea6e2 | Move the json entities specific functions to json_entities | 2023-07-01 15:04:59 +01:00 |  | 
			
				
					|  | 99f5c5bfe5 | Refactored parse_token function | 2023-07-01 04:43:52 +01:00 |  | 
			
				
					|  | 7e4d82888a | Updated print_token function | 2023-07-01 04:43:29 +01:00 |  | 
			
				
					|  | 2a4d573118 | Add print_json function to traverse json tree and print all elements | 2023-07-01 04:42:40 +01:00 |  | 
			
				
					|  | f8d69310be | Update debug config | 2023-07-01 04:42:00 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | e2c4e56fcd | Updated the parser implementation | 2023-06-30 01:16:33 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | 9a8bdcea02 | Added pointers to beginning and end of collection | 2023-06-30 01:16:10 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | 93e17c0c54 | Updated debug config | 2023-06-30 01:15:57 +01:00 |  | 
			
				
					|  | 96e9df0434 | Parser test implementation | 2023-06-28 23:36:52 +01:00 |  | 
			
				
					|  | ce38afc59f | Update json entities | 2023-06-28 23:36:37 +01:00 |  | 
			
				
					|  | 202dc51a18 | Update debug config | 2023-06-28 23:36:16 +01:00 |  | 
			
				
					|  | 9c0ababd93 | Update test files | 2023-06-28 23:35:57 +01:00 |  | 
			
				
					|  | b6d4a1f218 | Ensure the functions declared in lexer.c are static | 2023-06-28 21:44:04 +01:00 |  | 
			
				
					|  | 740d9b6566 | Combine TK_TRUE and TK_FALSE into TK_BOOL | 2023-06-28 21:43:35 +01:00 |  | 
			
				
					|  | 75b18d96ee | Add extra test file | 2023-06-28 21:42:42 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | 6d08b38058 | Start exploring the parser | 2023-06-28 20:50:54 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | 0a7e2f7f0c | Rename json entities | 2023-06-28 20:50:37 +01:00 |  | 
			
				
					|  | 14ad503d4d | Updated json_entities | 2023-06-27 23:16:26 +01:00 |  | 
			
				
					|  | 1e510411dc | get_next_token returns result which includes possible error and token | 2023-06-27 22:23:16 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | a6b45834fc | Start working on json_entities | 2023-06-26 18:32:53 +01:00 |  | 
			
				
					| 
							
							
								 Abdelrahman Said | 55ca87c425 | Ensure token's line and column number are printed properly on macOS and Linux | 2023-06-26 07:32:42 +01:00 |  |