Commit Graph

454 Commits (c8ce910fe17ecbc64ad728aac731c1fda8e84c33)

Author SHA1 Message Date
Brett 83729b83d0 ugh TODO: measure gcc version 2024-02-04 14:38:52 -05:00
Brett 25b35024e1 remove unused but troublesome include from nbt 2024-02-04 14:27:44 -05:00
Brett 2f400a6240 c++20 fixes 2024-02-04 14:24:25 -05:00
Brett b2534baaf0 Merge remote-tracking branch 'github/main' 2024-02-04 13:07:31 -05:00
Brett c2387e6564 expected seems to be working 2024-02-03 17:09:59 -05:00
Brett f3b92c3c2c currently broken and untested but almost have c++23 std::expected in BLT (c++17) 2024-02-03 13:11:59 -05:00
Brett d638edf012 more std::expected 2024-02-01 18:46:47 -05:00
Brett 991acb8d4f working on expected 2024-02-01 15:51:54 -05:00
Brett 527595e1cf add assert with custom runtime fail message 2024-01-31 17:24:46 -05:00
Brett 215a596d21 assert print function 2024-01-31 17:13:22 -05:00
Brett 93f56ebcb2 system 2024-01-31 01:16:13 -05:00
Brett 2cc2b2d262 add cstdlib to assert.h because it's needed for exit() 2024-01-30 00:38:38 -05:00
Brett a0b92ddfa7 destory now checks for null 2024-01-25 10:01:21 -05:00
Brett 4116404763 Merge remote-tracking branch 'refs/remotes/origin/main' 2024-01-25 10:01:03 -05:00
Brett b828f3b200 destory now checks for null 2024-01-25 10:00:56 -05:00
Brett 2ef516e66a check against nullptr 2024-01-24 17:37:01 -05:00
Brett b383fb0d16 lambda vistor help 2024-01-24 17:03:20 -05:00
Brett e219444d76 Merge remote-tracking branch 'github/main' 2024-01-19 16:36:50 -05:00
Brett 3163e66879 loader to string_view 2024-01-19 16:30:35 -05:00
Brett 0fbe3bf228 BLT rust like types because std::.... is too long 2024-01-16 14:31:58 -05:00
Brett a2e8cacaf2 we love warnings 2024-01-16 14:24:41 -05:00
Brett a4f0b1e3d4 obj laoder 2024-01-11 15:51:00 -05:00
Brett 60ec2051d8 nyahh 2024-01-11 11:16:46 -05:00
Brett 9147a85dc3 string_view trim 2024-01-08 22:08:48 -05:00
Brett 023b3f150b cstdint 2024-01-07 13:06:39 -05:00
Brett 8411810ab5 need to find a better way of doing contains on all containers 2024-01-02 02:21:44 -05:00
Brett bf6d15015a typecast 2024-01-02 01:27:43 -05:00
Brett 73094dbd6d add little fun != to vec 2024-01-02 01:18:47 -05:00
Brett d882b76d83 whoops forgot logging include 2024-01-01 20:57:05 -05:00
Brett f960dbddae thread class needs some work. use the constructor if non-queue 2024-01-01 20:53:26 -05:00
Brett 6e51e5cbe6 add features 2023-12-30 17:05:57 -05:00
Brett d913e95965 thread pool (untested) 2023-12-30 03:25:39 -05:00
Brett 13f82dfc2f math rads 2023-12-29 19:32:16 -05:00
Laptop Windows aad5958bc0 fixed windows 2023-12-29 01:07:08 -05:00
Brett 5ae17f4a86 fix msvc error 2023-12-28 12:33:01 -05:00
Brett c706e9b1df fix not including constexpr 2023-12-28 12:28:10 -05:00
Brett 1fed762bf8 string view in string.h 2023-12-20 14:57:17 -05:00
Brett 3778408504 make proper use of the allocator 2023-12-20 14:49:31 -05:00
Brett ce778da7f1 bin tree 2023-12-20 14:45:48 -05:00
Brett 665f6e0186 remove construct/destruct from allocator 2023-12-20 14:36:46 -05:00
Brett 111ab14b37 small done 2023-12-19 01:28:59 -05:00
Brett 8e701f6953 binary tree 2023-12-19 00:35:37 -05:00
Brett 2440044d72 bump version + allocator rule of 5 2023-12-18 23:24:53 -05:00
Brett b59f4af8ed bump version 2023-12-18 23:16:34 -05:00
Brett 085fd70063 move allocator to new file, memory_util, move functions around 2023-12-18 23:13:44 -05:00
Brett 3638703242 make work as a standard allocator 2023-12-18 20:55:27 -05:00
Brett 825e2c71a4 comments on the area allocator 2023-12-18 19:51:55 -05:00
Brett 19743d2be0 memory time 2023-12-18 19:22:29 -05:00
Brett b012b9f27c area allocator workings (basic, needs improvement) 2023-12-18 02:02:35 -05:00
Brett 57be387904 Merge remote-tracking branch 'refs/remotes/tpgc/main' 2023-12-16 15:53:18 -05:00
Brett 0f48bb8060 stacky 2023-12-16 15:53:02 -05:00
Brett 445a0028f7 vector? 2023-12-16 02:46:44 -05:00
Brett a691ca76b0 hashmap was in a bad place 2023-12-16 02:40:03 -05:00
Brett 4de984bdb8 emscript on system.h 2023-12-16 02:37:24 -05:00
Brett bda044de1e box 2023-12-15 14:03:33 -05:00
Brett 19f775b919 boxes now work nicely 2023-12-15 02:36:50 -05:00
Brett 1d52b21131 ascii box now fixed and back to where it was 2023-12-15 01:49:42 -05:00
Brett 90f271961f visit 2023-12-11 17:52:24 -05:00
Brett c1c989d416 love lambdas 2023-12-11 16:58:20 -05:00
Brett 4e526f1e8e boxes
need to make titleless boxes work next
2023-12-11 16:48:44 -05:00
Brett caaf91e9c7 boxes 2023-12-11 14:57:10 -05:00
Brett 7aae8272c3 memory tests 2023-12-10 15:15:23 -05:00
Brett 319f7a3771 static vector 2023-12-10 14:54:08 -05:00
Brett e6d096a486 move ranges around (utility over memory)
TOOD: add reverse
2023-12-10 13:21:26 -05:00
Brett ce6ade1a90 minior cleanup 2023-12-09 21:21:14 -05:00
Brett 8c862f5a8f enumerate fast enough 2023-12-09 15:32:02 -05:00
Brett eb9cd030e3 working on enumerate 2023-12-09 13:44:16 -05:00
Brett 704e77419f test 2023-12-08 20:44:45 -05:00
Brett a4220e3c0d test 2023-12-08 20:11:58 -05:00
Brett 8defbaf70d hot chocolate 2023-12-07 16:03:38 -05:00
Brett da891be991 fix memory leak in assert, add demangling and link options to find function names 2023-12-07 15:59:26 -05:00
Brett de84f9573b Merge remote-tracking branch 'refs/remotes/tpgc/main' + explict fixes 2023-12-03 17:02:50 -05:00
Brett 743cb4ae91 sexy columns 2023-12-03 17:01:51 -05:00
Brett 03c63cdf90 formatting broken 2023-12-01 15:03:47 -05:00
Brett 34451b5b86 please make all men gay -brett (to santa, xmas forever list) 2023-12-01 12:02:20 -05:00
Brett 98b5f6fa1e minor formatting 2023-11-30 20:14:18 -05:00
Brett e2b278e8bd working now 2023-11-30 19:56:45 -05:00
Brett da32f9b98a Autism (Ascii trees)
making ascii trees because fun
2023-11-29 21:36:22 -05:00
Brett 583807af96 fix profiler sorting 2023-11-26 18:05:38 -05:00
Brett f5886416bf move blackbox to utility 2023-11-26 17:35:06 -05:00
Brett f99ea36a85 utility is useless 2023-11-24 13:45:14 -05:00
Brett 02c62a2d63 move blackboxes to system 2023-11-22 21:21:17 -05:00
Brett 6514736262 add format to cycles to make look nice 2023-11-22 20:39:46 -05:00
Brett 06f87c9734 fix missing cstring 2023-11-17 01:47:24 -05:00
Brett fd9fa5454d compiler support for blackbox 2023-11-14 01:05:28 -05:00
Brett 5472783bd7 it's still recursive but it's honest work 2023-11-13 15:32:39 -05:00
Brett 3d7abd2765 fix assert, working on loading 2023-11-13 15:15:27 -05:00
Brett 19baf8b048 include recursive 2023-11-13 14:27:51 -05:00
Brett 32e2d48cd3 worsen logging 2023-11-10 12:40:10 -05:00
Brett bd7976cf71 fix logging 2023-11-09 21:11:34 -05:00
Brett e912e7e272 ranges 2023-11-09 19:11:56 -05:00
Brett da7627dd3b memory 2023-11-09 19:07:24 -05:00
Brett e28f30bcec fix uninit error 2023-11-09 15:28:17 -05:00
Brett e81cddf6ba fix posargs 2023-11-08 21:31:53 -05:00
Brett 97dd77d9c9 i hate you (fixed arg_parse ambig 2023-11-08 21:22:54 -05:00
Brett 97860853cf size check 2023-11-08 20:25:47 -05:00
Brett 1ada8d3912 we sexy man 2023-11-08 18:50:16 -05:00
Brett a555b53a61 update memory to check for size bounds: 2023-11-06 18:35:09 -05:00
Brett 1a72728aeb warning fix 2023-11-06 00:43:44 -05:00
Brett 288076ed02 improve scoped_buffer, it now handles copying 2023-11-05 19:05:32 -05:00
Brett 15bcd37834 make argparse work on c++ 17 2023-11-02 16:02:40 -04:00
Brett 1d8f9b4bbd fix memory leak 2023-10-27 14:32:15 -04:00
Brett 585429e345 order 2023-10-27 14:31:11 -04:00
Brett 0eb6db500b holy const batman 2023-10-27 14:30:16 -04:00
Brett 52c5f2b7b3 make reference 2023-10-27 14:29:41 -04:00
Brett f639b4f83c add default constructor to scoped_buffer 2023-10-27 14:26:31 -04:00
Brett 55c497475e why 2023-10-27 01:11:05 -04:00
Brett 827ee4bd55 move CPP20 constexpr to compat 2023-10-27 00:00:01 -04:00
Brett 8d2bb93b2d fs hack 2023-10-26 20:06:03 -04:00
Brett 5d539c1a2f fs hack 2023-10-26 20:01:01 -04:00
Brett a3179d1a36 compat 2023-10-26 19:44:44 -04:00
Brett 0d6f396a15 fun2 2023-10-26 16:36:27 -04:00
Brett cf49d155de fun 2023-10-26 16:35:42 -04:00
Brett a3d35b8e04 add support for gcc 8.5 2023-10-26 16:27:39 -04:00
Brett e059f1a7ef CONSTEXPR 20 2023-10-26 16:15:14 -04:00
Brett fcceff189b CONSTEXPR c++20 string functions 2023-10-25 14:30:24 -04:00
Brett 96af65a675 move 2023-10-25 01:26:44 -04:00
Brett 82583a444d .data() 2023-10-25 01:26:26 -04:00
Brett 6252525091 .data() 2023-10-25 01:23:33 -04:00
Brett 4010df0e3f const ptr 2023-10-25 01:23:16 -04:00
Brett d59cfd0d4a backwards compat 2023-10-24 21:44:24 -04:00
Brett 63ae93c6e6 move around to bytes and make it faster 2023-10-24 21:43:22 -04:00
Brett 5a07594e42 fix assert 2023-10-15 17:48:10 -04:00
Brett 76b2d57f05 add split for char 2023-10-15 16:43:20 -04:00
Brett 88ef415f8b add missing return 2023-10-14 18:36:32 -04:00
Brett 4f4ed1918b add string char contains overload 2023-10-14 18:35:11 -04:00
Brett ce642a30b7 rename 2023-10-14 17:06:10 -04:00
Brett f55e7d931b add string numbers check 2023-10-14 17:05:51 -04:00
Brett fbd067e69e add ability for std::string in args.get<T> 2023-10-09 21:50:41 -04:00
Brett 9c712402f3 profiler_v2 seems to be completely functional 2023-10-05 01:48:54 -04:00
Brett ab24a8733b add partial API compatability with profiler v1
the general idea is the same however due to how profiles are handled after calling write or print profile the intervals inside are no longer valid.
(they are deleted and will be removed from the internal hashmap)
print profile is also now consistent with the new API, old calls will need to be updated.
2023-10-05 01:40:36 -04:00
Brett 3266a7b102 fix profiler disable macro 2023-10-05 01:31:54 -04:00
Brett 620c8b9e33 auto_interval, formatting see details for information
auto_interval now accepts an interval_t* which must be created manually. allows for clean RAII
format now switches to seconds after 1000ms instead of after 100ms. This feels more natural
2023-10-05 01:18:47 -04:00
Brett fd3eb73008 profiler_v2 is WIP. seems to work but isn't fully tested 2023-10-04 01:39:43 -04:00
Brett 4486edee60 add .get for argparse (does a get_cast), add rdtsc for profilers 2023-10-03 00:43:08 -04:00
Brett 0bbcb8eeef Merge remote-tracking branch 'github/main' 2023-09-21 23:24:03 -04:00
Brett 029132c622 macro sackro allocator get fuckedero 2023-09-21 23:23:27 -04:00
Brett a438baeca3 fix time returning only extra nanoseconds. function now returns the total nanoseconds sine starting the program
this might be changed in the future
2023-09-17 16:24:53 -04:00
Brett 0b907867a2 argparse get_cast update to work with all is_arithmetic types 2023-09-17 15:22:37 -04:00
Brett 7a07f4a729 rename internal fields away from help to subcommand 2023-09-16 17:50:37 -04:00
Brett 02a1dc1a8c rename help disabler to SUBCOMMAND action type 2023-09-16 17:40:35 -04:00
Brett 9db6dd8456 fix bug with postional args preventing the warning of missing args
add option to print full filename
fix issue with some help printing full filename
2023-09-16 17:22:15 -04:00
Brett 1e293c7dba argparse update
a "janky" solution has been added to the argparse module of BLT.
The new update allows for the creation of "help disablers" which are basically akin to how git operates with
git submodule
git commit
etc
the primary command "git" can have flags (in the case of the tests, --no-color)
while having multiple help disabling sub commands (currently graphics and blt)
everything before the sub command arg will be processed as a primary command flag
everything after the sub command arg will be processed by the sub command arg_parse
this allows for effective namespacing of command modules

TODO:
- Make this as an action?
- cleanup the code
- use a name that makes more sense than "help disabler"
2023-09-16 16:27:48 -04:00
Brett 04cef480bd argparse 2023-09-13 17:29:50 -04:00
Brett 6fc5496c76 remove path test 2023-09-13 16:52:23 -04:00
Brett e2d932ea78 cpu timer 2023-09-13 16:49:56 -04:00
Brett 9e4bfad087 add more features to argparse
can now add git [name] [args] type calls
2023-09-10 15:33:11 -04:00
Brett 215220f98b move defines to c++ 2023-09-07 00:23:13 -04:00
Brett 465f1a4fc8 fix assert not requiring ; at the end 2023-09-07 00:21:02 -04:00
Brett 650af9877f inline some string functions - disable warnings 2023-08-31 21:47:32 -04:00