From 8232e79aac93585855d87b12b627a2e042d7b1ae Mon Sep 17 00:00:00 2001 From: Ed_ Date: Tue, 25 Jul 2023 23:00:57 -0400 Subject: [PATCH] Adding pragma regions to all dependency components --- project/dependencies/gen.basic_types.hpp | 4 ++++ project/dependencies/gen.containers.hpp | 9 +++------ project/dependencies/gen.debug.cpp | 4 ++++ project/dependencies/gen.debug.hpp | 4 ++++ project/dependencies/gen.file_handling.cpp | 4 ++++ project/dependencies/gen.file_handling.hpp | 3 +++ project/dependencies/gen.hashing.cpp | 4 ++++ project/dependencies/gen.hashing.hpp | 6 ++++++ project/dependencies/gen.impl_start.cpp | 4 ++++ project/dependencies/gen.macros.hpp | 4 ++++ project/dependencies/gen.memory.cpp | 4 ++++ project/dependencies/gen.memory.hpp | 4 ++++ project/dependencies/gen.parsing.cpp | 4 ++++ project/dependencies/gen.parsing.hpp | 4 ++++ project/dependencies/gen.printing.cpp | 4 ++++ project/dependencies/gen.printing.hpp | 4 ++++ project/dependencies/gen.string.cpp | 4 ++++ project/dependencies/gen.string.hpp | 15 +++++++++------ project/dependencies/gen.string_ops.cpp | 7 ++++++- project/dependencies/gen.string_ops.hpp | 4 ++++ project/dependencies/gen.timing.cpp | 4 ++++ project/dependencies/gen.timing.hpp | 4 ++++ project/gen.bootstrap.cpp | 6 +++--- 23 files changed, 98 insertions(+), 16 deletions(-) create mode 100644 project/dependencies/gen.hashing.hpp diff --git a/project/dependencies/gen.basic_types.hpp b/project/dependencies/gen.basic_types.hpp index 8f808b7..0aa0bec 100644 --- a/project/dependencies/gen.basic_types.hpp +++ b/project/dependencies/gen.basic_types.hpp @@ -1,3 +1,5 @@ +#pragma region Basic Types + #define GEN_U8_MIN 0u #define GEN_U8_MAX 0xffu #define GEN_I8_MIN ( -0x7f - 1 ) @@ -114,3 +116,5 @@ static_assert( sizeof( f64 ) == 8, "sizeof(f64) != 8" ); typedef s8 b8; typedef s16 b16; typedef s32 b32; + +#pragma region Basic Types diff --git a/project/dependencies/gen.containers.hpp b/project/dependencies/gen.containers.hpp index c0eb85a..03f3044 100644 --- a/project/dependencies/gen.containers.hpp +++ b/project/dependencies/gen.containers.hpp @@ -1,3 +1,5 @@ +#pragma region Containers + template struct Array { @@ -530,9 +532,4 @@ protected: } }; -#pragma region Hashing - -u32 crc32( void const* data, sw len ); -u64 crc64( void const* data, sw len ); - -#pragma endregion Hashing +#pragma endregion Containers diff --git a/project/dependencies/gen.debug.cpp b/project/dependencies/gen.debug.cpp index bd506a3..357f198 100644 --- a/project/dependencies/gen.debug.cpp +++ b/project/dependencies/gen.debug.cpp @@ -1,3 +1,5 @@ +#pragma endregion Debug + void assert_handler( char const* condition, char const* file, s32 line, char const* msg, ... ) { _printf_err( "%s:(%d): Assert Failure: ", file, line ); @@ -35,3 +37,5 @@ s32 assert_crash( char const* condition ) exit( code ); } #endif + +#pragma endregion Debug diff --git a/project/dependencies/gen.debug.hpp b/project/dependencies/gen.debug.hpp index 9e335fe..6c8fd35 100644 --- a/project/dependencies/gen.debug.hpp +++ b/project/dependencies/gen.debug.hpp @@ -1,3 +1,5 @@ +#pragma endregion Debug + #if defined( _MSC_VER ) # if _MSC_VER < 1300 # define GEN_DEBUG_TRAP() __asm int 3 /* Trap to debugger! */ @@ -30,3 +32,5 @@ void assert_handler( char const* condition, char const* file, s32 line, char const* msg, ... ); s32 assert_crash( char const* condition ); void process_exit( u32 code ); + +#pragma endregion Debug diff --git a/project/dependencies/gen.file_handling.cpp b/project/dependencies/gen.file_handling.cpp index 76b3fcc..56d25b8 100644 --- a/project/dependencies/gen.file_handling.cpp +++ b/project/dependencies/gen.file_handling.cpp @@ -1,3 +1,5 @@ +#pragma region File Handling + #if defined( GEN_SYSTEM_WINDOWS ) || defined( GEN_SYSTEM_CYGWIN ) internal wchar_t* _alloc_utf8_to_ucs2( AllocatorInfo a, char const* text, sw* w_len_ ) @@ -630,3 +632,5 @@ internal GEN_FILE_CLOSE_PROC( _memory_file_close ) } FileOperations const memory_file_operations = { _memory_file_read, _memory_file_write, _memory_file_seek, _memory_file_close }; + +#pragma endregion File Handling diff --git a/project/dependencies/gen.file_handling.hpp b/project/dependencies/gen.file_handling.hpp index 8ce1721..671d2f3 100644 --- a/project/dependencies/gen.file_handling.hpp +++ b/project/dependencies/gen.file_handling.hpp @@ -1,3 +1,4 @@ +#pragma region File Handling typedef u32 FileMode; @@ -367,3 +368,5 @@ b8 file_stream_open( FileInfo* file, AllocatorInfo allocator, u8* buffer, sw siz u8* file_stream_buf( FileInfo* file, sw* size ); extern FileOperations const memory_file_operations; + +#pragma endregion File Handling diff --git a/project/dependencies/gen.hashing.cpp b/project/dependencies/gen.hashing.cpp index b9b6942..4c7f701 100644 --- a/project/dependencies/gen.hashing.cpp +++ b/project/dependencies/gen.hashing.cpp @@ -1,3 +1,5 @@ +#pragma region Hashing + global u32 const _crc32_table[ 256 ] = { 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, @@ -79,3 +81,5 @@ u64 crc64( void const* data, sw len ) result = ( result >> 8 ) ^ ( _crc64_table[ ( result ^ *c ) & 0xff ] ); return result; } + +#pragma region Hashing diff --git a/project/dependencies/gen.hashing.hpp b/project/dependencies/gen.hashing.hpp new file mode 100644 index 0000000..2cc9f7e --- /dev/null +++ b/project/dependencies/gen.hashing.hpp @@ -0,0 +1,6 @@ +#pragma region Hashing + +u32 crc32( void const* data, sw len ); +u64 crc64( void const* data, sw len ); + +#pragma endregion Hashing diff --git a/project/dependencies/gen.impl_start.cpp b/project/dependencies/gen.impl_start.cpp index 0e2171d..dda2e1d 100644 --- a/project/dependencies/gen.impl_start.cpp +++ b/project/dependencies/gen.impl_start.cpp @@ -1,3 +1,5 @@ +#pragma region Macros and Includes + # include // NOTE: Ensure we use standard methods for these calls if we use GEN_PICO # if ! defined( GEN_PICO_CUSTOM_ROUTINES ) @@ -74,3 +76,5 @@ # include #endif #endif + +#pragma endregion Macros and Includes diff --git a/project/dependencies/gen.macros.hpp b/project/dependencies/gen.macros.hpp index 8beee15..2e3125e 100644 --- a/project/dependencies/gen.macros.hpp +++ b/project/dependencies/gen.macros.hpp @@ -1,3 +1,5 @@ +#pragma region Macros + #define zpl_cast( Type ) ( Type ) // Keywords @@ -98,3 +100,5 @@ void swap( Type& a, Type& b ) a = b; b = tmp; } + +#pragma endregion Macros diff --git a/project/dependencies/gen.memory.cpp b/project/dependencies/gen.memory.cpp index dd1d22e..24a1b1c 100644 --- a/project/dependencies/gen.memory.cpp +++ b/project/dependencies/gen.memory.cpp @@ -1,3 +1,5 @@ +#pragma region Memory + void* mem_copy( void* dest, void const* source, sw n ) { if ( dest == NULL ) @@ -383,3 +385,5 @@ void Pool::clear() FreeList = PhysicalStart; } + +#pragma endregion Memory diff --git a/project/dependencies/gen.memory.hpp b/project/dependencies/gen.memory.hpp index 2dbab99..2e9a863 100644 --- a/project/dependencies/gen.memory.hpp +++ b/project/dependencies/gen.memory.hpp @@ -1,3 +1,5 @@ +#pragma region Memory + #define kilobytes( x ) ( ( x ) * ( s64 )( 1024 ) ) #define megabytes( x ) ( kilobytes( x ) * ( s64 )( 1024 ) ) #define gigabytes( x ) ( megabytes( x ) * ( s64 )( 1024 ) ) @@ -480,3 +482,5 @@ struct Pool return { allocator_proc, this }; } }; + +#pragma endregion Memory diff --git a/project/dependencies/gen.parsing.cpp b/project/dependencies/gen.parsing.cpp index d51cbcf..f1adf22 100644 --- a/project/dependencies/gen.parsing.cpp +++ b/project/dependencies/gen.parsing.cpp @@ -1,4 +1,5 @@ #pragma region ADT + #define _adt_fprintf( s_, fmt_, ... ) \ do \ { \ @@ -780,9 +781,11 @@ ADT_Error adt_str_to_number_strict( ADT_Node* node ) } #undef _adt_fprintf + #pragma endregion ADT #pragma region CSV + #ifdef GEN_CSV_DEBUG # define GEN_CSV_ASSERT( msg ) GEN_PANIC( msg ) #else @@ -1062,4 +1065,5 @@ String csv_write_string_delimiter( AllocatorInfo a, CSV_Object* obj, char delimi file_close( &tmp ); return output; } + #pragma endregion CSV diff --git a/project/dependencies/gen.parsing.hpp b/project/dependencies/gen.parsing.hpp index b9dd8ce..19d3a8f 100644 --- a/project/dependencies/gen.parsing.hpp +++ b/project/dependencies/gen.parsing.hpp @@ -1,4 +1,5 @@ #pragma region ADT + enum ADT_Type : u32 { EADT_TYPE_UNINITIALISED, /* node was not initialised, this is a programming error! */ @@ -380,9 +381,11 @@ ADT_Error adt_print_number( FileInfo* file, ADT_Node* node ); * @return */ ADT_Error adt_print_string( FileInfo* file, ADT_Node* node, char const* escaped_chars, char const* escape_symbol ); + #pragma endregion ADT #pragma region CSV + enum CSV_Error : u32 { ECSV_Error__NONE, @@ -418,4 +421,5 @@ GEN_IMPL_INLINE String csv_write_string( AllocatorInfo a, CSV_Object* obj ) { return csv_write_string_delimiter( a, obj, ',' ); } + #pragma endregion CSV diff --git a/project/dependencies/gen.printing.cpp b/project/dependencies/gen.printing.cpp index 253d138..05151a0 100644 --- a/project/dependencies/gen.printing.cpp +++ b/project/dependencies/gen.printing.cpp @@ -1,3 +1,5 @@ +#pragma region Printing + enum { GEN_FMT_MINUS = bit( 0 ), @@ -558,3 +560,5 @@ sw str_fmt_out_err( char const* fmt, ... ) va_end( va ); return res; } + +#pragma endregion Printing diff --git a/project/dependencies/gen.printing.hpp b/project/dependencies/gen.printing.hpp index c27c34a..9914e97 100644 --- a/project/dependencies/gen.printing.hpp +++ b/project/dependencies/gen.printing.hpp @@ -1,3 +1,5 @@ +#pragma region Printing + struct FileInfo; #ifndef GEN_PRINTF_MAXLEN @@ -54,3 +56,5 @@ sw fatal(char const* fmt, ...) return -1; #endif } + +#pragma endregion Printing diff --git a/project/dependencies/gen.string.cpp b/project/dependencies/gen.string.cpp index 4cd4eb0..c77477b 100644 --- a/project/dependencies/gen.string.cpp +++ b/project/dependencies/gen.string.cpp @@ -1,3 +1,5 @@ +#pragma region String + String String::fmt( AllocatorInfo allocator, char* buf, sw buf_size, char const* fmt, ... ) { va_list va; @@ -33,3 +35,5 @@ bool String::append_fmt( char const* fmt, ... ) return append( buf, res ); } + +#pragma endregion String diff --git a/project/dependencies/gen.string.hpp b/project/dependencies/gen.string.hpp index 393a587..fac3cc2 100644 --- a/project/dependencies/gen.string.hpp +++ b/project/dependencies/gen.string.hpp @@ -1,3 +1,5 @@ +#pragma region String + // Constant string with length. struct StrC { @@ -219,7 +221,7 @@ struct String sw avail_space() const { Header const& - header = * rcast( Header const*, Data - sizeof( Header )); + header = * rcast( Header const*, Data - sizeof( Header )); return header.Capacity - header.Length; } @@ -227,7 +229,7 @@ struct String sw capacity() const { Header const& - header = * rcast( Header const*, Data - sizeof( Header )); + header = * rcast( Header const*, Data - sizeof( Header )); return header.Capacity; } @@ -260,7 +262,7 @@ struct String sw length() const { Header const& - header = * rcast( Header const*, Data - sizeof( Header )); + header = * rcast( Header const*, Data - sizeof( Header )); return header.Length; } @@ -303,7 +305,7 @@ struct String char* end() { Header const& - header = * rcast( Header const*, Data - sizeof( Header )); + header = * rcast( Header const*, Data - sizeof( Header )); return Data + header.Length; } @@ -345,7 +347,7 @@ struct String return this_; } - + char& operator [] ( sw index ) { return Data[ index ]; @@ -369,4 +371,5 @@ struct String_POD } }; static_assert( sizeof( String_POD ) == sizeof( String ), "String is not a POD" ); - \ No newline at end of file + +#pragma endregion String \ No newline at end of file diff --git a/project/dependencies/gen.string_ops.cpp b/project/dependencies/gen.string_ops.cpp index e35e874..dc452e5 100644 --- a/project/dependencies/gen.string_ops.cpp +++ b/project/dependencies/gen.string_ops.cpp @@ -1,4 +1,7 @@ -internal sw _scan_zpl_i64( const char* text, s32 base, s64* value ) +#pragma region String Ops + +internal +sw _scan_zpl_i64( const char* text, s32 base, s64* value ) { const char* text_begin = text; s64 result = 0; @@ -202,3 +205,5 @@ f64 str_to_f64( const char* str, char** end_ptr ) return result; } + +#pragma endregion String Ops diff --git a/project/dependencies/gen.string_ops.hpp b/project/dependencies/gen.string_ops.hpp index 2c203c0..9920c10 100644 --- a/project/dependencies/gen.string_ops.hpp +++ b/project/dependencies/gen.string_ops.hpp @@ -1,3 +1,5 @@ +#pragma region String Ops + GEN_DEF_INLINE const char* char_first_occurence( const char* str, char c ); constexpr auto str_find = &char_first_occurence; @@ -256,3 +258,5 @@ GEN_IMPL_INLINE void str_to_upper( char* str ) str++; } } + +#pragma endregion String Ops diff --git a/project/dependencies/gen.timing.cpp b/project/dependencies/gen.timing.cpp index a8ed6bf..b5fecda 100644 --- a/project/dependencies/gen.timing.cpp +++ b/project/dependencies/gen.timing.cpp @@ -1,3 +1,5 @@ +#pragma region Timing + #ifdef GEN_BENCHMARK #if defined( GEN_COMPILER_MSVC ) && ! defined( __clang__ ) u64 read_cpu_time_stamp_counter( void ) @@ -156,3 +158,5 @@ return ( f64 )( time_rel_ms() * 1e-3 ); } #endif + +#pragma endregion Timing diff --git a/project/dependencies/gen.timing.hpp b/project/dependencies/gen.timing.hpp index 5c79478..e11d1ef 100644 --- a/project/dependencies/gen.timing.hpp +++ b/project/dependencies/gen.timing.hpp @@ -1,3 +1,5 @@ +#pragma region Timing + #ifdef GEN_BENCHMARK //! Return CPU timestamp. u64 read_cpu_time_stamp_counter( void ); @@ -8,3 +10,5 @@ f64 time_rel( void ); //! Return relative time since the application start. u64 time_rel_ms( void ); #endif + +#pragma endregion Timing diff --git a/project/gen.bootstrap.cpp b/project/gen.bootstrap.cpp index 2960137..7ed572b 100644 --- a/project/gen.bootstrap.cpp +++ b/project/gen.bootstrap.cpp @@ -46,6 +46,7 @@ int gen_main() Code string_ops = scan_file( "dependencies/gen.string_ops.hpp" ); Code printing = scan_file( "dependencies/gen.printing.hpp" ); Code containers = scan_file( "dependencies/gen.containers.hpp" ); + Core hashing = scan_file( "dependencies/gen.hashing.hpp" ); Code string = scan_file( "dependencies/gen.string.hpp" ); Code file_handling = scan_file( "dependencies/gen.file_handling.hpp" ); Code parsing = scan_file( "dependencies/gen.parsing.hpp" ); @@ -54,9 +55,8 @@ int gen_main() Builder deps_header; deps_header.open("gen/gen_dep.hpp"); - deps_header.print_fmt("// This file is intended to be included within gen.cpp (There is no pragma diagnostic ignores)\n\n"); + deps_header.print_fmt("// This file is intended to be included within gen.hpp (There is no pragma diagnostic ignores)\n\n"); deps_header.print_fmt("#pragma once\n\n"); - deps_header.print( push_ignores ); deps_header.print( header_start ); deps_header.print( nspace_macro ); deps_header.print_fmt( "GEN_NS_BEGIN\n\n"); @@ -67,12 +67,12 @@ int gen_main() deps_header.print( string_ops ); deps_header.print( printing ); deps_header.print( containers ); + deps_header.print( hashing ); deps_header.print( string ); deps_header.print( file_handling ); deps_header.print( parsing ); deps_header.print( timing ); deps_header.print_fmt( "GEN_NS_END\n\n"); - deps_header.print( pop_ignores ); deps_header.write(); }