mirror of
				https://github.com/Ed94/gencpp.git
				synced 2025-10-31 06:50:53 -07:00 
			
		
		
		
	C-library Finished setting up header dependencies (
This commit is contained in:
		| @@ -142,7 +142,6 @@ int gen_main() | |||||||
| 		Code debug        = scan_file( project_dir "dependencies/debug.hpp" ); | 		Code debug        = scan_file( project_dir "dependencies/debug.hpp" ); | ||||||
| 		Code string_ops   = scan_file( project_dir "dependencies/string_ops.hpp" ); | 		Code string_ops   = scan_file( project_dir "dependencies/string_ops.hpp" ); | ||||||
| 		Code hashing      = scan_file( project_dir "dependencies/hashing.hpp" ); | 		Code hashing      = scan_file( project_dir "dependencies/hashing.hpp" ); | ||||||
| 		Code filesystem   = scan_file( project_dir "dependencies/filesystem.hpp" ); |  | ||||||
| 		Code timing       = scan_file( project_dir "dependencies/timing.hpp" ); | 		Code timing       = scan_file( project_dir "dependencies/timing.hpp" ); | ||||||
|  |  | ||||||
| 		CodeBody parsed_memory = parse_file( project_dir "dependencies/memory.hpp" ); | 		CodeBody parsed_memory = parse_file( project_dir "dependencies/memory.hpp" ); | ||||||
| @@ -387,6 +386,44 @@ int gen_main() | |||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
|  | 		CodeBody parsed_filesystem = parse_file( project_dir "dependencies/filesystem.hpp" ); | ||||||
|  | 		CodeBody filesystem        = def_body(CT_Global_Body); | ||||||
|  | 		for ( Code entry = parsed_filesystem.begin(); entry != parsed_filesystem.end(); ++ entry ) | ||||||
|  | 		{ | ||||||
|  | 			switch (entry->Type) | ||||||
|  | 			{ | ||||||
|  | 				case CT_Preprocess_IfDef: | ||||||
|  | 				{ | ||||||
|  | 					b32 found = ignore_preprocess_cond_block(txt("GEN_INTELLISENSE_DIRECTIVES"), entry, parsed_filesystem, filesystem ); | ||||||
|  | 					if (found) break; | ||||||
|  |  | ||||||
|  | 					filesystem.append(entry); | ||||||
|  | 				} | ||||||
|  | 				break; | ||||||
|  | 				case CT_Variable: | ||||||
|  | 				{ | ||||||
|  | 					CodeVar var = cast(CodeVar, entry); | ||||||
|  | 					if (var->Specs.has(Spec_Constexpr) > -1) | ||||||
|  | 					{ | ||||||
|  | 						CodeDefine define = def_define(entry->Name, entry->Value->Content); | ||||||
|  | 						filesystem.append(define); | ||||||
|  | 						continue; | ||||||
|  | 					} | ||||||
|  | 					//if ( strc_contains(entry->Name, txt("Msg_Invalid_Value"))) | ||||||
|  | 					//{ | ||||||
|  | 					//	CodeDefine define = def_define(entry->Name, entry->Value->Content); | ||||||
|  | 					//	printing.append(define); | ||||||
|  | 					//	continue; | ||||||
|  | 					//} | ||||||
|  | 					filesystem.append(entry); | ||||||
|  | 				} | ||||||
|  | 				break; | ||||||
|  | 				default: | ||||||
|  | 					filesystem.append(entry); | ||||||
|  | 				break; | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  |  | ||||||
| 		CodeBody containers = def_body(CT_Global_Body); | 		CodeBody containers = def_body(CT_Global_Body); | ||||||
| 		{ | 		{ | ||||||
| 			CodeBody array_ssize = gen_array(txt("ssize"), txt("Array_ssize")); | 			CodeBody array_ssize = gen_array(txt("ssize"), txt("Array_ssize")); | ||||||
| @@ -421,8 +458,8 @@ int gen_main() | |||||||
| 		header.print( dump_to_scratch_and_retireve(containers)); | 		header.print( dump_to_scratch_and_retireve(containers)); | ||||||
| 		header.print( hashing ); | 		header.print( hashing ); | ||||||
| 		header.print( dump_to_scratch_and_retireve(strings)); | 		header.print( dump_to_scratch_and_retireve(strings)); | ||||||
| 		// header.print( filesystem ); | 		header.print( dump_to_scratch_and_retireve(filesystem)); | ||||||
| 		// header.print( timing ); | 		header.print( timing ); | ||||||
| 		header.print_fmt( "\nGEN_NS_END\n" ); | 		header.print_fmt( "\nGEN_NS_END\n" ); | ||||||
| 		header.print_fmt( roll_own_dependencies_guard_end ); | 		header.print_fmt( roll_own_dependencies_guard_end ); | ||||||
| #pragma endregion Print Dependencies | #pragma endregion Print Dependencies | ||||||
|   | |||||||
| @@ -194,6 +194,7 @@ b32 file_read_at( FileInfo* file, void* buffer, ssize size, s64 offset ); | |||||||
| 	*/ | 	*/ | ||||||
| b32 file_read_at_check( FileInfo* file, void* buffer, ssize size, s64 offset, ssize* bytes_read ); | b32 file_read_at_check( FileInfo* file, void* buffer, ssize size, s64 offset, ssize* bytes_read ); | ||||||
|  |  | ||||||
|  | typedef struct FileContents FileContents; | ||||||
| struct FileContents | struct FileContents | ||||||
| { | { | ||||||
| 	AllocatorInfo allocator; | 	AllocatorInfo allocator; | ||||||
| @@ -201,8 +202,8 @@ struct FileContents | |||||||
| 	ssize            size; | 	ssize            size; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| constexpr b32 zero_terminate    = true; | constexpr b32 file_zero_terminate    = true; | ||||||
| constexpr b32 no_zero_terminate = false; | constexpr b32 file_no_zero_terminate = false; | ||||||
|  |  | ||||||
| /** | /** | ||||||
| 	* Reads the whole file contents | 	* Reads the whole file contents | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ CodeBody gen_ecode( char const* path ) | |||||||
| 	char  scratch_mem[kilobytes(1)]; | 	char  scratch_mem[kilobytes(1)]; | ||||||
| 	Arena scratch = arena_init_from_memory( scratch_mem, sizeof(scratch_mem) ); | 	Arena scratch = arena_init_from_memory( scratch_mem, sizeof(scratch_mem) ); | ||||||
|  |  | ||||||
| 	file_read_contents( arena_allocator_info( & scratch), zero_terminate, path ); | 	file_read_contents( arena_allocator_info( & scratch), file_zero_terminate, path ); | ||||||
|  |  | ||||||
| 	CSV_Object csv_nodes; | 	CSV_Object csv_nodes; | ||||||
| 	csv_parse( &csv_nodes, scratch_mem, GlobalAllocator, false ); | 	csv_parse( &csv_nodes, scratch_mem, GlobalAllocator, false ); | ||||||
| @@ -63,7 +63,7 @@ CodeBody gen_eoperator( char const* path ) | |||||||
| 	char scratch_mem[kilobytes(4)]; | 	char scratch_mem[kilobytes(4)]; | ||||||
| 	Arena scratch = arena_init_from_memory( scratch_mem, sizeof(scratch_mem) ); | 	Arena scratch = arena_init_from_memory( scratch_mem, sizeof(scratch_mem) ); | ||||||
|  |  | ||||||
| 	file_read_contents( arena_allocator_info(& scratch), zero_terminate, path ); | 	file_read_contents( arena_allocator_info(& scratch), file_zero_terminate, path ); | ||||||
|  |  | ||||||
| 	CSV_Object csv_nodes; | 	CSV_Object csv_nodes; | ||||||
| 	csv_parse( &csv_nodes, scratch_mem, GlobalAllocator, false ); | 	csv_parse( &csv_nodes, scratch_mem, GlobalAllocator, false ); | ||||||
| @@ -119,7 +119,7 @@ CodeBody gen_especifier( char const* path ) | |||||||
| 	char scratch_mem[kilobytes(4)]; | 	char scratch_mem[kilobytes(4)]; | ||||||
| 	Arena scratch = arena_init_from_memory( scratch_mem, sizeof(scratch_mem) ); | 	Arena scratch = arena_init_from_memory( scratch_mem, sizeof(scratch_mem) ); | ||||||
|  |  | ||||||
| 	file_read_contents( arena_allocator_info(& scratch), zero_terminate, path ); | 	file_read_contents( arena_allocator_info(& scratch), file_zero_terminate, path ); | ||||||
|  |  | ||||||
| 	CSV_Object csv_nodes; | 	CSV_Object csv_nodes; | ||||||
| 	csv_parse( &csv_nodes, scratch_mem, GlobalAllocator, false ); | 	csv_parse( &csv_nodes, scratch_mem, GlobalAllocator, false ); | ||||||
| @@ -226,12 +226,12 @@ CodeBody gen_etoktype( char const* etok_path, char const* attr_path ) | |||||||
|  |  | ||||||
| 	AllocatorInfo scratch_info = arena_allocator_info(& scratch); | 	AllocatorInfo scratch_info = arena_allocator_info(& scratch); | ||||||
|  |  | ||||||
| 	FileContents enum_content = file_read_contents( scratch_info, zero_terminate, etok_path ); | 	FileContents enum_content = file_read_contents( scratch_info, file_zero_terminate, etok_path ); | ||||||
|  |  | ||||||
| 	CSV_Object csv_enum_nodes; | 	CSV_Object csv_enum_nodes; | ||||||
| 	csv_parse( &csv_enum_nodes, rcast(char*, enum_content.data), GlobalAllocator, false ); | 	csv_parse( &csv_enum_nodes, rcast(char*, enum_content.data), GlobalAllocator, false ); | ||||||
|  |  | ||||||
| 	FileContents attrib_content = file_read_contents( scratch_info, zero_terminate, attr_path ); | 	FileContents attrib_content = file_read_contents( scratch_info, file_zero_terminate, attr_path ); | ||||||
|  |  | ||||||
| 	CSV_Object csv_attr_nodes; | 	CSV_Object csv_attr_nodes; | ||||||
| 	csv_parse( &csv_attr_nodes, rcast(char*, attrib_content.data), GlobalAllocator, false ); | 	csv_parse( &csv_attr_nodes, rcast(char*, attrib_content.data), GlobalAllocator, false ); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user